Skip to content

Bump version from 1.16.0 to 1.17.0 #75

Bump version from 1.16.0 to 1.17.0

Bump version from 1.16.0 to 1.17.0 #75

Workflow file for this run

name: Build and Release
on:
push:
branches: [main]
paths:
- "zendesk_app/manifest.json"
- "zendesk_app/src/manifest.json"
jobs:
release:
runs-on: ubuntu-latest
outputs:
version: ${{ steps.get_version.outputs.version }}
defaults:
run:
working-directory: zendesk_app
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: "20.x"
cache: "npm"
cache-dependency-path: zendesk_app/package-lock.json
- name: Get version
id: get_version
run: |
VERSION=$(node -p "require('./src/manifest.json').version")
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Create and push tag
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
run: |
git config user.email "stan@quivr.app"
git config user.name "StanGirard"
git tag -a "v${{ steps.get_version.outputs.version }}" -m "Version ${{ steps.get_version.outputs.version }}"
git push origin "v${{ steps.get_version.outputs.version }}"
build-preview:
needs: release
runs-on: ubuntu-latest
environment: preview
defaults:
run:
working-directory: zendesk_app
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: "20.x"
cache: "npm"
cache-dependency-path: zendesk_app/package-lock.json
- run: npm install
- run: npm i @zendesk/zcli -g
- run: |
npm run build
zcli apps:package dist
ZIP_FILE=$(find . -name "app-*.zip" -type f)
mv "$ZIP_FILE" preview.zip
env:
ZENDESK_SUBDOMAIN: ${{ secrets.ZENDESK_PREVIEW_SUBDOMAIN }}
ZENDESK_EMAIL: ${{ secrets.ZENDESK_PREVIEW_EMAIL }}
ZENDESK_API_TOKEN: ${{ secrets.ZENDESK_PREVIEW_API_TOKEN }}
VITE_QUIVR_API_URL: ${{ vars.VITE_QUIVR_API_URL }}
VITE_QUIVR_GOBOCOM_API_URL: ${{ vars.VITE_QUIVR_GOBOCOM_API_URL }}
VITE_ZENDESK_LOCATION: ${{ vars.VITE_ZENDESK_LOCATION }}
VITE_ZENDESK_MODAL_LOCATION: ${{ vars.VITE_ZENDESK_MODAL_LOCATION }}
VITE_POSTHOG_HOST: ${{ vars.VITE_POSTHOG_HOST }}
VITE_POSTHOG_KEY: ${{ vars.VITE_POSTHOG_KEY }}
- uses: actions/upload-artifact@v4
with:
name: preview.zip
path: zendesk_app/preview.zip
build-production:
needs: release
runs-on: ubuntu-latest
environment: production
defaults:
run:
working-directory: zendesk_app
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: "20.x"
cache: "npm"
cache-dependency-path: zendesk_app/package-lock.json
- run: npm install
- run: npm i @zendesk/zcli -g
- run: |
rm -rf dist
npm run build
zcli apps:package dist
ZIP_FILE=$(find . -name "app-*.zip" -type f)
mv "$ZIP_FILE" production.zip
env:
ZENDESK_SUBDOMAIN: ${{ secrets.ZENDESK_PROD_SUBDOMAIN }}
ZENDESK_EMAIL: ${{ secrets.ZENDESK_PROD_EMAIL }}
ZENDESK_API_TOKEN: ${{ secrets.ZENDESK_PROD_API_TOKEN }}
VITE_QUIVR_API_URL: ${{ vars.VITE_QUIVR_API_URL }}
VITE_QUIVR_GOBOCOM_API_URL: ${{ vars.VITE_QUIVR_GOBOCOM_API_URL }}
VITE_ZENDESK_LOCATION: ${{ vars.VITE_ZENDESK_LOCATION }}
VITE_ZENDESK_MODAL_LOCATION: ${{ vars.VITE_ZENDESK_MODAL_LOCATION }}
VITE_POSTHOG_HOST: ${{ vars.VITE_POSTHOG_HOST }}
VITE_POSTHOG_KEY: ${{ vars.VITE_POSTHOG_KEY }}
- uses: actions/upload-artifact@v4
with:
name: production.zip
path: zendesk_app/production.zip
create-release:
needs: [release, build-preview, build-production]
runs-on: ubuntu-latest
steps:
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: preview.zip
path: .
- uses: actions/download-artifact@v4
with:
name: production.zip
path: .
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
with:
tag_name: v${{ needs.release.outputs.version }}
release_name: Release v${{ needs.release.outputs.version }}
draft: false
prerelease: false
- name: Upload Preview ZIP
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./preview.zip
asset_name: preview.zip
asset_content_type: application/zip
- name: Upload Production ZIP
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./production.zip
asset_name: production.zip
asset_content_type: application/zip