Pushes a release package to Octopus Deploy.
Before this action runs:
- NuGet packages must have been created in the root-level
nugetsdirectory. - Any additional assets to be included in the GitHub release (like app executables) must be created in the root-level
assetsdirectory. - The following environment variables must have been set during the build by Particular.Packaging:
MinVerVersionMinVerMajorMinVerMinor
steps:
- name: Deploy
uses: Particular/push-octopus-package-action@v2.0.0
with:
octopus-deploy-api-key: ${{ secrets.OCTOPUS_DEPLOY_API_KEY }}This is used primarily for ServiceControl. One or more additional file patterns can be specified, one per line, that will be included in the root of the deployment package. Encoding this data as JSON files with ConvertTo-Json in the workflow and ConvertFrom-Json on the deployment server is recommended.
steps:
- name: Deploy
uses: Particular/push-octopus-package-action@v2.0.0
with:
octopus-deploy-api-key: ${{ secrets.OCTOPUS_DEPLOY_API_KEY }}
additional-metadata-paths: metadata/*.json
steps:
- name: Deploy
uses: Particular/push-octopus-package-action@v2.0.0
with:
octopus-deploy-api-key: ${{ secrets.OCTOPUS_DEPLOY_API_KEY }}
additional-metadata-paths: |
metadata/*.json
other-directory/*.txtThis action abstracts the following steps:
- Arranging NuGet packages and other assets on disk for packaging
- Creating a metadata file to pass version information to Octopus Deploy
- Packaging the content into a RepoName.Deploy package
- Publishing an
octopus-packageartifact to GitHub Actions - Pushing the deployment package to Octopus
- Creating the Octopus Deploy release
Because release workflows cannot be easily tested in each repo, combining these tasks into a single action allows running through CI using a fake "release" so that PRs can be merged with confidence.
The scripts and documentation in this project are released under the MIT License.