name: Budibase Release Selfhost on: workflow_dispatch: jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: node-version: 14.x fetch_depth: 0 - name: Tag and release Docker images (Self Host) run: | docker login -u $DOCKER_USER -p $DOCKER_PASSWORD # Get latest release version release_version=$(cat lerna.json | jq -r '.version') echo "RELEASE_VERSION=$release_version" >> $GITHUB_ENV release_tag=v$release_version # Pull apps and worker images docker pull budibase/apps:$release_tag docker pull budibase/worker:$release_tag docker pull budibase/proxy:$release_tag # Tag apps and worker images docker tag budibase/apps:$release_tag budibase/apps:$SELFHOST_TAG docker tag budibase/worker:$release_tag budibase/worker:$SELFHOST_TAG docker tag budibase/proxy:$release_tag budibase/proxy:$SELFHOST_TAG # Push images docker push budibase/apps:$SELFHOST_TAG docker push budibase/worker:$SELFHOST_TAG docker push budibase/proxy:$SELFHOST_TAG env: DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} SELFHOST_TAG: latest - name: Build CLI executables run: | pushd packages/cli yarn yarn build popd - name: Build OpenAPI spec run: | pushd packages/server yarn yarn build:specs popd - name: Setup Helm uses: azure/setup-helm@v1 id: helm-install - name: Build and release helm chart run: | git config user.name "Budibase Helm Bot" git config user.email "<>" git reset --hard HEAD git pull helm package charts/budibase git checkout gh-pages mv *.tgz docs helm repo index docs git add -A git commit -m "Helm Release: ${{ env.RELEASE_VERSION }}" git push env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Perform Github Release uses: softprops/action-gh-release@v1 with: name: v${{ env.RELEASE_VERSION }} tag_name: v${{ env.RELEASE_VERSION }} generate_release_notes: true files: | packages/cli/build/cli-win.exe packages/cli/build/cli-linux packages/cli/build/cli-macos packages/server/specs/openapi.yaml packages/server/specs/openapi.json