Merge pull request #823 from Kovah/dev #74
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | |