私は竹が初めてです。私がやろうとしているのは、ビルドプロセス中に作成されたすべての.dacpac
ファイルを収集することです。
image: Microsoft/dotnet:latest
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- cd BackgroundCode
- dotnet restore
- dotnet run
artifacts:
- '../**/*.dacpac'
ディレクトリ構造は次のようになります
'agent/build/Projects/[Projectname]/[Projectname] .dacpac'。
パイプラインの出力は言う
正常に生成されたZipアーカイブ/ opt/atlassian/pipelines/agent/build/Projects/[ProjectName]/[ProjectName] .dacpac
つまり、ビルドプロセス中に実際に生成されたファイルがあります。私は何か間違ったことをした?いいえの場合、それらのアーティファクトはどこにありますか。
残念ながら、ドキュメントによると、パイプラインの実行後にすべてのアーティファクトが削除されます。
https://confluence.atlassian.com/bitbucket/using-artifacts-in-steps-935389074.html
「パイプラインが完了すると、成功するか失敗するかにかかわらず、アーティファクトは削除されます。」
ただし、アーティファクトをBitbucketダウンロードセクションまたはその他の場所にデプロイできます。
- step:
name: Archive
script:
- curl -X POST --user "${BB_AUTH_STRING}" "https://api.bitbucket.org/2.0/repositories/${BITBUCKET_REPO_OWNER}/${BITBUCKET_REPO_SLUG}/downloads" --form files=@"something/**"
Bitbucket-pipelines.ymlでは、別の「step:
」に進むと、ほとんどすべてがリセットされ、前のステップとは独立して動作します。これは必ずしも明白ではなく、混乱を招く可能性があります。
前の手順では、cd BackgroundCode
を使用してサブフォルダーに移動しました。 スクリプトが「artifacts:
」ステップに進むと、現在の作業ディレクトリは元の$BITBUCKET_CLONE_DIR
にリセットされます。したがって、各ステップで再度cd BackgroundCode
するか、次のように $BITBUCKET_CLONE_DIR
に対して のパスを使用する必要があります。
artifacts:
- BackgroundCode/**/*.dacpac
または
step2:
- cd BackgroundCode
# List the files relative to the 'BackgroundCode' directory
- find . -iname '*.dacpac'
これにより、アーティファクトが自動的に(7日間)保存され、上部の[アーティファクト]タブに表示されます。