# This is a basic workflow to help you get started with Actions name: CI # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the master branch on: push: branches: - feature/githubActionsBuild - master - development release: types: [created] jobs: build: defaults: run: working-directory: AhMyth-Server runs-on: ubuntu-latest steps: - name: Cache node_modules uses: actions/cache@v2 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-node- - name: Cache Electron uses: actions/cache@v1 with: path: ${{ github.workspace }}/.cache/electron key: ${{ runner.os }}-electron-cache-${{ hashFiles(format('{0}{1}', github.workspace, '/package-lock.json')) }} restore-keys: | ${{ runner.os }}-electron-cache- - name: Cache Electron-Builder uses: actions/cache@v1 with: path: ${{ github.workspace }}/.cache/electron-builder key: ${{ runner.os }}-electron-builder-cache-${{ hashFiles(format('{0}{1}', github.workspace, '/package-lock.json')) }} restore-keys: | ${{ runner.os }}-electron-builder-cache- - uses: actions/checkout@v2 - name: Setup tmate session uses: mxschmitt/action-tmate@v2 - name: Install deps run: sudo apt-get install --no-install-recommends -y wine mono gcc-multilib g++-multilib || true - uses: actions/checkout@v2 - name: Setup Node.js environment uses: actions/setup-node@v1.4.3 with: node-version: 10.x - name: Install dependencies run: | npm i - name: Build Linux app (32 bit) run: npm run build:linux32 - name: Build Linux app (64 bit) run: npm run build:linux64 - name: Build Windows App (32 bit) run: npm run build:win32 - name: Build Windows App (64 bit) run: npm run build:win64 - name: Upload - push to artifact files uses: actions/upload-artifact@v1 with: name: AhMyth path: /dist/