name: release_beta_to_dev on: workflow_dispatch jobs: Release: runs-on: ubuntu-latest env: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" UI_DIRECTORY: ./frontend ASSET_DIRECTORY: ./__builds__ FETCH_DEPTH: 15 # Should be enough steps: - name: Validate branch if: ${{ github.ref != 'refs/heads/development' }} run: | echo This action can only be run on development branch, not ${{ github.ref }} exit 1 - name: Checkout uses: actions/checkout@v2 with: fetch-depth: ${{ env.FETCH_DEPTH }} ref: development - name: Setup Git run: | git config --global user.name "github-actions" && git fetch --depth ${{ env.FETCH_DEPTH }} --tags - name: Cache node_modules uses: actions/cache@v2 with: path: '${{ env.UI_DIRECTORY }}/node_modules' key: ${{ runner.os }}-modules-${{ hashFiles('**/package-lock.json') }} restore-keys: ${{ runner.os }}-modules- - name: Setup NodeJS uses: actions/setup-node@v2 with: node-version: "15.x" - name: Install Global Tools run: npm install -g release-it @release-it/bumper auto-changelog # TODO: Remove @release-it/bumper - name: Install UI Dependencies run: npm install working-directory: ${{ env.UI_DIRECTORY }} - name: Build & Stage UI run: npm run build && git add . working-directory: ${{ env.UI_DIRECTORY }} # TODO: Remove Stage Step - name: Create Release run: release-it --ci --increment prerelease --preRelease=beta # The following steps are a hack to schedule.yaml # TODO: Remove this when we are no longer using @release-it/bumper to update VERSION file and push a new commit to the repo - name: (Hack) Get Latest Version id: current-version run: | CURRENT_VERSION=$(git rev-parse HEAD) echo "::set-output name=CURRENT_VERSION::$CURRENT_VERSION" - name: (Hack) Generate Schedule Cache uses: actions/cache@v2 with: path: ./LAST_VERSION_SAVED key: bazarr-development-release_beta_to_dev.yaml-${{ steps.current-version.outputs.CURRENT_VERSION }} - name: (Hack) Cache Current Version run: echo "1" > LAST_VERSION_SAVED