.github/workflows/ci.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
name: CI # Controls when the action will run. on: # Triggers the workflow on push or pull request events but only for the master branch push: branches: [ master ] tags-ignore: [ '**' ] pull_request: branches: [ master ] tags-ignore: [ '**' ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "ci" ci: # The type of runner that the job will run on runs-on: ubuntu-latest env: CHOOSENIM_CHOOSE_VERSION: stable CHOOSENIM_NO_ANALYTICS: 1 # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - name: install musl-gcc run: sudo apt-get install -y musl-tools - name: Update $PATH run: echo "$HOME/.nimble/bin" >> $GITHUB_PATH - name: Install Nim run: | curl https://nim-lang.org/choosenim/init.sh -sSf > init.sh sh init.sh -y - name: Install nifty run: nimble install -y nifty - name: Install deps run: nifty install - name: Build run: nimble build -d:release -d:ssl -d:useOpenSsl3 --opt:size --gcc.exe:musl-gcc --gcc.linkerexe:musl-gcc --cpu:amd64 --os:linux - name: UPX uses: svenstaro/upx-action@v2 with: files: | min args: --best --force - name: Test run: ./min tests/all.min |