diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..3ed0bdd --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,56 @@ +# Sample workflow for building and deploying a Hugo site to GitHub Pages +name: Release with semantic-release + +on: + # Runs on pushes targeting the default branch + push: + branches: + - 'master' + paths: + - '.releaserc' + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + + # Run every 20 days at 12:30 UTC + schedule: + - cron: '30 12 * * */20' + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + issues: write + id-token: write + contents: write + pull-requests: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +# Default to bash +defaults: + run: + shell: bash + +jobs: + # Release with Semantic Release + release: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + - name: Install dependencies + run: npm install && git pull + - name: Run semantic-release + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npx semantic-release --debug