diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d7652e80d..ad717c913 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Release +name: 🚀 Release # Runs the build and package scripts when a new tagged release is publishe, created or edited # Note that this runs for both releases and pre-releases: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#release @@ -64,23 +64,29 @@ jobs: # Upload installers to github release # TODO: Can these be combined based on matrix.os??? - - name: Set package version and name - uses: brown-ccv/gh-actions/get-package-info@main + # TODO: Overwrite files if they exist? + # Get package info + - name: Get package name and version id: package_info + run: | + echo "name=$(cat package.json | jq -r '.name')" >> $GITHUB_OUTPUT + echo "version=$(cat package.json | jq -r '.version')" >> $GITHUB_OUTPUT + shell: bash + - name: ⬆ Upload installer to release - Windows if: startsWith(matrix.os, 'windows') uses: svenstaro/upload-release-action@v2 with: - file: out/make/squirrel.windows/x64/${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }} Setup.exe - asset_name: ${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }}-${{ matrix.setting }}-setup.exe + file: out/make/squirrel.windows/x64/${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }} Setup.exe + asset_name: ${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }}-${{ matrix.setting }}-setup.exe tag: ${{ github.ref }} repo_token: ${{ secrets.GITHUB_TOKEN }} - name: ⬆ Upload installer to release - macOS if: startsWith(matrix.os, 'mac') uses: svenstaro/upload-release-action@v2 with: - file: out/make/${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }}-x64.dmg - asset_name: ${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }}-${{ matrix.setting }}.dmg + file: out/make/${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }}-x64.dmg + asset_name: ${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }}-${{ matrix.setting }}.dmg tag: ${{ github.ref }} repo_token: ${{ secrets.GITHUB_TOKEN }} - name: ⬆ Upload installer to release - Linux @@ -128,39 +134,46 @@ jobs: name: Package for PsiTurk runs-on: ubuntu-latest steps: - # Set up Node + # Set up runner - name: ⬇️ Checkout repo uses: actions/checkout@v4 + - name: ⎔ Setup node uses: actions/setup-node@v3 with: node-version-file: .nvmrc cache: npm + - name: 🐍 Setup Python + uses: actions/setup-python@v4 + with: + python-version: "3.10" # Install dependencies - name: 📥 Install Dependencies run: npm ci + - name: 📥 Install PsiTurk + run: pip install psiturk # Build the app - name: ⚒ Build run: npm run build - # Package on PsiTurk - - name: Set package version and name - uses: brown-ccv/gh-actions/get-package-info@main + # Get package info + - name: Get package name and version id: package_info - - name: 🐍 Set up Python - uses: actions/setup-python@v4 - with: - python-version: 3.7 - - name: 📥 Install PsiTurk - run: pip install psiturk + run: | + echo "name=$(cat package.json | jq -r '.name')" >> $GITHUB_OUTPUT + echo "version=$(cat package.json | jq -r '.version')" >> $GITHUB_OUTPUT + shell: bash + + # Package on PsiTurk - name: 📦 Create Psiturk Build run: | cd psiturkit - ./psiturk-it -p ${{ steps.package_info.outputs.package_name }}-psiturk + ./psiturk-it -p ${{ steps.package_info.outputs.name }}-psiturk - name: ⬆ Upload PsiTurk Build - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: psiturk-build - path: psiturkit/${{ steps.package_info.outputs.package_name }}-psiturk + path: psiturkit/${{ steps.package_info.outputs.name }}-psiturk + if-no-files-found: error diff --git a/.github/workflows/workflow-package.yml b/.github/workflows/workflow-package.yml index 6174fe0f0..7370c4357 100644 --- a/.github/workflows/workflow-package.yml +++ b/.github/workflows/workflow-package.yml @@ -1,4 +1,4 @@ -name: Package Workflow +name: 📦 Package Workflow # Workflow dispatch for packaging an electron executable on: @@ -42,6 +42,7 @@ jobs: # Set up runner - name: ⬇️ Checkout repo uses: actions/checkout@v4 + - name: ⎔ Setup node uses: actions/setup-node@v3 with: @@ -76,26 +77,34 @@ jobs: if: startsWith(matrix.os, 'ubuntu') run: npm run package:linux - # Upload installers to github action - - name: Set package version and name - uses: brown-ccv/gh-actions/get-package-info@main + # Get package info + - name: Get package name and version id: package_info + run: | + echo "name=$(cat package.json | jq -r '.name')" >> $GITHUB_OUTPUT + echo "version=$(cat package.json | jq -r '.version')" >> $GITHUB_OUTPUT + shell: bash + + # Upload installers to github action - name: ⬆ Upload installer - Windows - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 if: startsWith(matrix.os, 'windows') with: name: ${{ format('win-installer-{0}', github.event.inputs.setting) }} - path: out/make/squirrel.windows/x64/${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }} Setup.exe + path: out/make/squirrel.windows/x64/${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }} Setup.exe + if-no-files-found: error - name: ⬆ Upload installer - Mac - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 if: startsWith(matrix.os, 'mac') with: name: ${{ format('mac-installer-{0}', github.event.inputs.setting) }} - path: out/make/${{ steps.package_info.outputs.package_name }}-${{ steps.package_info.outputs.package_version }}-x64.dmg + path: out/make/${{ steps.package_info.outputs.name }}-${{ steps.package_info.outputs.version }}-x64.dmg + if-no-files-found: error - name: ⬆ Upload installer - Linux - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 if: startsWith(matrix.os, 'ubuntu') with: name: ${{ format('linux-installer-{0}', github.event.inputs.setting) }} - path: out/make/deb/x64/${{ steps.package_info.outputs.package_name }}_${{ steps.package_info.outputs.package_version }}_amd64.deb + path: out/make/deb/x64/${{ steps.package_info.outputs.name }}_${{ steps.package_info.outputs.version }}_amd64.deb + if-no-files-found: error diff --git a/package.json b/package.json index 1e93d243a..3d89c37d6 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "email": "ccv-bot@brown.edu", "url": "https://ccv.brown.edu" }, - "version": "3.2.5", + "version": "3.2.6", "honeycombVersion": "", "license": "MIT", "private": true,