# SPDX-License-Identifier: GPL-2.0-or-later # Copyright (C) 2021-present 351ELEC # Copyright (C) 2022-present Fewtarius ### Based on work by @pkegg name: release-dev on: pull_request: paths-ignore: - '.github/**' - '*.md' - 'Dockerfile' - '.dockerignore' - '.gitignore' - 'licenses/**' - 'tools/**' branches: - dev types: [closed] workflow_dispatch: env: BRANCH: dev jobs: launch-dev-release: runs-on: ubuntu-20.04 if: github.event_name == 'workflow_dispatch' || (github.event.pull_request.merged == 'true' && github.event.label.name == 'build') steps: - uses: actions/checkout@v2 name: checkout with: clean: false fetch-depth: 0 ref: "${{env.BRANCH}}" - name: only run on the primary repository if: ${{ !startsWith(github.repository_owner, 'JustEnoughLinuxOS') }} run: exit 0 - name: repository full name id: full_name run: | echo "::set-output name=full_name::$(git config --get remote.origin.url | sed 's|^.*github.com/||g' | sed 's/.git$//g')" - name: changes id: changes run: | stable_commit="$(curl "https://api.github.com/repos/JustEnoughLinuxOS/distribution/git/refs/heads/main" 2>&1 | awk '/url/ {last=$2;n=NR} END{print last; }' | awk 'BEGIN {FS="/"}; {print substr($9, 1, length($9)-1)}') release_notes="$(git log ${stable_commit}..HEAD --pretty=format:"* %h: %s")" release_notes="${release_notes//'%'/'%25'}" release_notes="${release_notes//$'\n'/'%0A'}" release_notes="${release_notes//$'\r'/'%0D'}" echo "::set-output name=changes::$(echo ${release_notes} | wc -l)" echo "::set-output name=release_notes::${release_notes}" - name: Get date for artifacts id: date run: echo "::set-output name=date::$(date +'%Y%m%d%H%M')" - name: Repository Dispatch if: steps.changes.outputs.changes != '0' uses: peter-evans/repository-dispatch@v1 with: token: ${{ secrets.REPO_ACCESS }} repository: ${{ steps.full_name.outputs.full_name }} event-type: release-dev client-payload: | { "branch" : "${{ env.BRANCH }}", "release_tag" : "${{steps.date.outputs.date}}", "release_notes" : ${{toJSON(steps.changes.outputs.release_notes)}} }