Skip to content

Merge pull request #788 from Kovah/dev #70

Merge pull request #788 from Kovah/dev

Merge pull request #788 from Kovah/dev #70

Workflow file for this run

name: Build Release Package
on:
push:
branches:
- main
jobs:
build-js:
name: Build assets for the package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Reconfigure Git to use HTTP authentication
run: >
git config --global url."https://github.com/".insteadOf
ssh://git@github.com/
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Try to build the assets
run: |
npm ci
npm run production
- name: Upload built assets
uses: actions/upload-artifact@v4
with:
name: assets
path: public/assets/dist
- name: Upload mix manifest
uses: actions/upload-artifact@v4
with:
name: mix-manifest
path: public/mix-manifest.json
build-package:
name: Build final dist package
runs-on: ubuntu-latest
needs: build-js
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: assets
path: public/assets/dist
- uses: actions/download-artifact@v4
with:
name: mix-manifest
path: public
- uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: mbstring
- id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-
- name: Prepare the environment
run: cp .env.example .env
- name: Validate composer.json and composer.lock
run: composer validate
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest --no-dev
- name: Publish package configuration
run: 'php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"'
- name: Remove .env file
run: rm .env
- uses: thedoctor0/zip-release@master
with:
filename: linkace.zip
exclusions: '*.git*'
- uses: actions/upload-artifact@v4
with:
name: linkace-package
path: linkace.zip
build-package-docker:
name: Build final dist package for Docker setup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Rename files
run: |
mv .env.docker.production .env
chmod 0666 .env
mv docker-compose.production-simple.yml docker-compose.yml
- uses: montudor/action-zip@v1
with:
args: zip -qq linkace-package-docker-simple.zip docker-compose.yml .env LICENSE.md README.md
- uses: actions/upload-artifact@v4
with:
name: linkace-docker-simple
path: linkace-package-docker-simple.zip
- name: Rename files
run: mv docker-compose.production.yml docker-compose.yml
- uses: montudor/action-zip@v1
with:
args: zip -qq linkace-package-docker-advanced.zip docker-compose.yml .env nginx.conf nginx-ssl.conf LICENSE.md README.md
- uses: actions/upload-artifact@v4
with:
name: linkace-docker-advanced
path: linkace-package-docker-advanced.zip