Skip to content

Build for Linux

Build for Linux #2

Workflow file for this run

name: Build for Linux
on:
workflow_dispatch:
branches: master
jobs:
build:
runs-on: ubuntu-latest
container: travisci/ci-ubuntu-1804
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Cache NodeJS modules
uses: actions/cache@v4
with:
path: |
./node_modules
./app/node_modules
key: ubuntu-deps-${{ hashFiles('yarn.lock') }}-${{ hashFiles('app/package-lock.json') }}
- name: Install Dependencies
run: npm ci
- name: Setup AWS CLI
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Lint
run: npm run lint
- name: Build
run: DEBUG=electron-packager npm run build
- uses: snapcore/action-build@v1
id: build
- uses: snapcore/action-publish@v1
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
with:
snap: ${{ steps.build.outputs.snap }}
release: edge
- name: Sync artifacts to S3 bucket
run: |
aws s3 sync app/dist/ "s3://mailspring-builds/client/$(git rev-parse --short HEAD)/osx" \
--acl public-read \
--exclude "*" --include *.zip