mirror of
https://github.com/gorhill/uBlock.git
synced 2024-09-04 01:59:38 +02:00
The main nodejs flavor is "npm", which is to be used to lint/test and the publication of an official npm package -- and by design it has dependencies on mocha, eslint, etc. A new flavor "dig" has been created with minimal dependencies and which purpose is to easily allow to write specialized code to investigate local code changes in uBO -- and it's not meant for publication. Consequently, "make nodejs" has been replaced with "make npm", and a new "dig" target has been added to the makefile, to be used for instrumenting local code changes for investigation purpose.
79 lines
3.2 KiB
YAML
79 lines
3.2 KiB
YAML
name: GitHub CI
|
|
|
|
on:
|
|
create:
|
|
branches: master
|
|
|
|
# I used the following project as template to get started:
|
|
# https://github.com/dessant/search-by-image/blob/master/.github/workflows/ci.yml
|
|
|
|
jobs:
|
|
build:
|
|
name: Build packages
|
|
runs-on: ubuntu-latest
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
steps:
|
|
- name: Clone repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
persist-credentials: false
|
|
- name: Clone uAssets
|
|
run: |
|
|
git submodule update --depth 1 --init
|
|
# https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html
|
|
- name: Get release information
|
|
id: release_info
|
|
run: |
|
|
echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//}
|
|
- name: Create GitHub release
|
|
id: create_release
|
|
uses: actions/create-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ github.token }}
|
|
with:
|
|
tag_name: ${{ steps.release_info.outputs.VERSION }}
|
|
release_name: ${{ steps.release_info.outputs.VERSION }}
|
|
prerelease: true
|
|
- name: Build all packages
|
|
run: |
|
|
tools/make-chromium.sh ${{ steps.release_info.outputs.VERSION }}
|
|
tools/make-firefox.sh ${{ steps.release_info.outputs.VERSION }}
|
|
tools/make-thunderbird.sh ${{ steps.release_info.outputs.VERSION }}
|
|
tools/make-npm.sh ${{ steps.release_info.outputs.VERSION }}
|
|
- name: Upload Chromium package
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: dist/build/uBlock0_${{ steps.release_info.outputs.VERSION }}.chromium.zip
|
|
asset_name: uBlock0_${{ steps.release_info.outputs.VERSION }}.chromium.zip
|
|
asset_content_type: application/octet-stream
|
|
- name: Upload Firefox package
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: dist/build/uBlock0_${{ steps.release_info.outputs.VERSION }}.firefox.xpi
|
|
asset_name: uBlock0_${{ steps.release_info.outputs.VERSION }}.firefox.xpi
|
|
asset_content_type: application/octet-stream
|
|
- name: Upload Thunderbird package
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: dist/build/uBlock0_${{ steps.release_info.outputs.VERSION }}.thunderbird.xpi
|
|
asset_name: uBlock0_${{ steps.release_info.outputs.VERSION }}.thunderbird.xpi
|
|
asset_content_type: application/octet-stream
|
|
- name: Upload NodeJS package
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: dist/build/uBlock0_${{ steps.release_info.outputs.VERSION }}.npm.tgz
|
|
asset_name: uBlock0_${{ steps.release_info.outputs.VERSION }}.npm.tgz
|
|
asset_content_type: application/octet-stream
|