Skip to content

Updated to version v1.0.16 #37

Updated to version v1.0.16

Updated to version v1.0.16 #37

Workflow file for this run

name: 'CI/CD Pipeline'
on:
push:
branches:
- main
#tags:
# - v*
workflow_dispatch:
permissions:
contents: write
jobs:
build:
name: "Build"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v3
- name: "Extract Information from Manifest"
id: extract_info
run: |
NAME=$(jq -r '.name' src/manifest.json)
VERSION=$(jq -r '.version' src/manifest.json)
echo "NAME=$NAME" >> $GITHUB_ENV
echo "VERSION=$VERSION" >> $GITHUB_ENV
echo "DO_RELEASE='false'" >> $GITHUB_ENV
- name: "Create Tag if Version Changed"
id: create_tag
run: |
if git ls-remote --tags origin | grep "refs/tags/v${{ env.VERSION }}" >/dev/null; then
echo "Tag v${{ env.VERSION }} already exists"
else
git config user.name "github-actions"
git config user.email "[email protected]"
git tag v${{ env.VERSION }}
git push origin v${{ env.VERSION }}
echo "::set-output name=create_release::true"
echo "DO_RELEASE='true'" >> $GITHUB_ENV
fi
- name: "web-ext build"
id: web-ext-build
uses: kewisch/action-web-ext@v1
with:
cmd: build
source: src
filename: "${{ env.NAME }}-${{ env.VERSION }}.xpi"
env:
WEB_EXT_FILENAME: "${{ env.NAME }}-${{ env.VERSION }}.xpi"
- name: Print filename
run: echo "The generated file is ${{ env.WEB_EXT_FILENAME }}"
release:
runs-on: ubuntu-latest
needs: build # Ensure the build job completes first
if: needs.build.outputs.DO_RELEASE == 'true'
#if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
#if: startsWith(github.ref, 'refs/tags/v')
steps:
- name: "Checkout"
uses: actions/checkout@v3
- name: "web-ext build"
id: web-ext-build
uses: kewisch/action-web-ext@v1
with:
cmd: build
source: src
filename: "${{ env.NAME }}-${{ env.VERSION }}.xpi"
- name: "Web Ext Sign"
id: web-ext-sign
uses: kewisch/action-web-ext@v1
with:
cmd: sign
source: ${{ steps.web-ext-build.outputs.target }}
channel: listed
apiKey: ${{ secrets.AMO_SIGN_KEY }}
apiSecret: ${{ secrets.AMO_SIGN_SECRET }}
timeout: 900000
- name: "Create GitHub Release"
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: "v${{ env.VERSION }}"
release_name: "Release v${{ env.VERSION }}"
draft: false
prerelease: false
- name: "Upload Release Asset"
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.web-ext-build.outputs.target }}
asset_name: "${{ env.NAME }}-${{ env.VERSION }}.xpi"
asset_content_type: application/x-xpinstall