# This is a basic workflow to help you get started with Actions name: Build-Stage on: workflow_dispatch: inputs: git-ref: description: "Release Git Ref (Which branch or tag to build?)" required: true default: "master" cloudflare-project-name: description: "Cloudflare pages project name" required: true default: "logseq-demo" release: types: [released] env: CLOJURE_VERSION: '1.11.1.1413' NODE_VERSION: '18' JAVA_VERSION: '17' jobs: build: runs-on: ubuntu-latest env: asset-path: ${GITHUB_REF##*/}/static/js/ steps: - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 with: ref: ${{ github.event.inputs.git-ref }} - name: Setup Java JDK uses: actions/setup-java@v3 with: distribution: 'zulu' java-version: ${{ env.JAVA_VERSION }} - name: Install Node.js, NPM and Yarn uses: actions/setup-node@v3 with: node-version: ${{ env.NODE_VERSION }} - name: Setup clojure uses: DeLaGuardo/setup-clojure@10.1 with: cli: ${{ env.CLOJURE_VERSION }} - name: Fetch yarn deps run: yarn cache clean && yarn install --frozen-lockfile - name: Build Released-Web run: | yarn gulp:build && clojure -M:cljs release app --config-merge '{:asset-path "${{env.asset-path}}" :compiler-options {:source-map-include-sources-content false :source-map-detail-level :symbols}}' ls -ah ./static/js - name: Publish to Cloudflare Pages uses: cloudflare/pages-action@1 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: 2553ea8236c11ea0f88de28fce1cbfee projectName: ${{ github.event.inputs.cloudflare-project-name || 'logseq-demo' }} directory: 'static' gitHubToken: ${{ secrets.GITHUB_TOKEN }} branch: 'production'