我正在嘗試從 Github Actions 運行腳本,它一直說:找不到檔案或目錄。
這是 github 操作:
name: Build And Deploy
on:
push:
# branches:
# - master`
jobs:
generate-build-number-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
# https://github.com/marketplace/actions/build-number-generator
- name: Generate build number
uses: einaregilsson/build-number@v3
with:
token: ${{secrets.github_token}}
- name: Print new build number
run: echo "Build number is $BUILD_NUMBER"
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: Print GITHUB_WORKSPACE
run: echo ${GITHUB_WORKSPACE}
- name: Build Docker
run: |
chmod x "${GITHUB_WORKSPACE}/../docker/build-docker.sh"
${GITHUB_WORKSPACE}/../docker/build-docker.sh
- name: Push Docker
run: |
chmod x "${GITHUB_WORKSPACE}/../docker/push-docker.sh"
${GITHUB_WORKSPACE}/../docker/push-docker.sh
出于某種原因,GITHUB_WORKSPACE路徑很奇怪,這就是為什么我必須這樣做${GITHUB_WORKSPACE}/../docker/push-docker.sh,添加../路徑。有沒有辦法列出檔案或獲取當前作業目錄以查看檔案的實際位置?
我試著做echo ${cwd},echo ${pwd}但它沒有回應。
我已經參考了以下鏈接來運行 bash 腳本: https ://github.community/t/running-a-bash-script/141584
uj5u.com熱心網友回復:
最佳實踐是working-directory: 針對這些步驟運行您的命令,以使它們在特定目錄中執行 - 相對于您的根檔案夾。
uj5u.com熱心網友回復:
問題是目錄結構。一旦我列出目錄中的檔案并找到檔案的路徑,操作就會成功運行。這是最終的 yml 腳本。
on:
push:
branches:
- master
jobs:
generate-build-number-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
# required for accessing files in repository.
# https://github.com/marketplace/actions/build-number-generator
- name: Generate build number
uses: einaregilsson/build-number@v3
with:
token: ${{secrets.github_token}}
- name: Print new build number
run: echo "Build number is $BUILD_NUMBER"
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: Build Docker
run: ${PWD}/docker/build-docker
- name: Push Docker
run: ${PWD}/docker/push-docker
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/478116.html
上一篇:Bash陣列回圈只取第一個條目
