123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- name: release
- on:
- push:
- branches:
- - master
- env:
- DISCORD_HOOK_URL: ${{ secrets.DISCORD_HOOK_URL }}
- GITHUB_SHA: ${{ github.sha }}
- jobs:
- release:
- name: Build Release
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Retrieve Certs
- run: |
- ./script/retrieve_certs
- env:
- GIT_USER: ${{ secrets.GIT_USER }}
- GIT_AUTH: ${{ secrets.GIT_AUTH }}
- GIT_URL: ${{ secrets.GIT_URL }}
- CERTS_KEY: ${{ secrets.CERTS_KEY }}
- - name: Set Release Tag
- id: release
- run: echo "::set-output name=release_tag::$(cat version.txt)"
- - name: Build release
- run: |
- ./script/build_release release
- - 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: ${{ secrets.AWS_ACCESS_REGION }}
- - name: Deploy master to release bucket
- run: |
- aws s3 sync --no-progress --acl public-read s3out s3://${{ secrets.AWS_S3_BUCKET_PROD }}/${{ steps.release.outputs.release_tag }}
- - name: Deploy master to rolling bucket
- run: |
- aws s3 sync --no-progress --acl public-read s3out-latest s3://${{ secrets.AWS_S3_BUCKET_PROD }}
- - name: Invalidate Cloudfront
- run: |
- aws cloudfront create-invalidation --distribution-id ${{ secrets.CLOUDFRONT_DIST_ID_PROD }} --paths "/*" "/ipxe/*"
- - name: Tag Release
- run: |
- ./script/tag ${{ steps.release.outputs.release_tag }}
- - name: Create Release and Upload Assets
- uses: svenstaro/upload-release-action@v2
- with:
- file: githubout/*
- file_glob: true
- overwrite: true
- prerelease: false
- release_name: ${{ steps.release.outputs.release_tag }}
- repo_token: ${{ secrets.GITHUB_TOKEN }}
- tag: ${{ steps.release.outputs.release_tag }}
- - name: Notify Discord on failure
- if: failure()
- run: |
- ./script/message failure
- - name: Notify Discord on completion
- if: success()
- run: |
- ./script/message live-push
|