-
Notifications
You must be signed in to change notification settings - Fork 150
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
146 changed files
with
4,903 additions
and
1,922 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
#!/usr/bin/env bash | ||
echo "discord_msg=Version ${FULL_VERSION} is available, download: [zip](http://downloads.phpvms.net/$ZIP_NAME) | [tar](http://downloads.phpvms.net/$TAR_NAME)" >> "$GITHUB_OUTPUT" | ||
echo "discord_msg=Version ${NBGV_SemVer2} is available, download: [zip](https://phpvms.cdn.vmslabs.net/$ZIP_NAME) | [tar](https://phpvms.cdn.vmslabs.net/$TAR_NAME)" >> "$GITHUB_OUTPUT" |
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,13 +2,13 @@ name: 'Build' | |
on: | ||
pull_request: | ||
push: | ||
# release: | ||
# types: [created] | ||
branches: | ||
- main | ||
- dev | ||
workflow_dispatch: | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
if: github.repository == 'nabeelio/phpvms' | ||
strategy: | ||
fail-fast: true | ||
matrix: | ||
|
@@ -20,7 +20,15 @@ jobs: | |
MYSQL_ROOT_PASSWORD: root | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
# https://github.com/marketplace/actions/nerdbank-gitversioning | ||
- name: Nerdbank.GitVersioning | ||
uses: dotnet/[email protected] | ||
with: | ||
setAllVars: true | ||
|
||
# Configure Caching | ||
- name: Setup cache environment | ||
|
@@ -32,7 +40,7 @@ jobs: | |
key: ${{ env.key }} | ||
|
||
- name: Cache extensions | ||
uses: actions/cache@v3 | ||
uses: actions/cache@v4 | ||
with: | ||
path: ${{ steps.cache-env.outputs.dir }} | ||
key: ${{ steps.cache-env.outputs.key }} | ||
|
@@ -43,7 +51,7 @@ jobs: | |
run: echo "::set-output name=dir::$(composer config cache-files-dir)" | ||
|
||
- name: Cache dependencies | ||
uses: actions/cache@v3 | ||
uses: actions/cache@v4 | ||
with: | ||
path: ${{ steps.composer-cache.outputs.dir }} | ||
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} | ||
|
@@ -61,16 +69,6 @@ jobs: | |
- name: Shutdown Ubuntu MySQL | ||
run: sudo service mysql stop | ||
|
||
# - name: Install MariaDB | ||
# uses: getong/[email protected] | ||
# with: | ||
# character set server: 'utf8' | ||
# collation server: 'utf8_general_ci' | ||
# mysql database: 'phpvms' | ||
# mysql root password: '' | ||
# mysql user: '' | ||
# mysql password: '' | ||
|
||
- name: Install MySQL | ||
uses: mirromutth/[email protected] | ||
with: | ||
|
@@ -90,12 +88,10 @@ jobs: | |
run: | | ||
php --version | ||
mysql --version | ||
# sleep 10 | ||
# Downgrade composer version to 1.x | ||
composer install --dev --no-interaction --verbose | ||
cp .github/scripts/env.test .env | ||
cp .github/scripts/phpunit.xml phpunit.xml | ||
.github/scripts/version.sh | ||
.github/scripts/version.sh ${{ env.NBGV_SemVer2 }} | ||
php artisan database:create --reset | ||
php artisan migrate:refresh --seed | ||
|
@@ -111,69 +107,106 @@ jobs: | |
name: 'Create release package' | ||
needs: [build] | ||
runs-on: ubuntu-latest | ||
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' || startsWith(github.ref, 'refs/tags/') | ||
if: github.repository == 'nabeelio/phpvms' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' || startsWith(github.ref, 'refs/tags/')) | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Setup PHP | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: '8.1' | ||
# https://github.com/marketplace/actions/nerdbank-gitversioning | ||
- name: Get Version | ||
uses: dotnet/[email protected] | ||
with: | ||
setAllVars: true | ||
|
||
- uses: olegtarasov/[email protected] | ||
id: tagName | ||
- name: Setup PHP | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: '8.3' | ||
|
||
# Configure Caching | ||
- name: Get composer cache directory | ||
id: composer-cache | ||
run: echo "::set-output name=dir::$(composer config cache-files-dir)" | ||
- uses: olegtarasov/[email protected] | ||
id: tagName | ||
|
||
- name: Cache dependencies | ||
uses: actions/cache@v3 | ||
with: | ||
path: ${{ steps.composer-cache.outputs.dir }} | ||
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} | ||
restore-keys: ${{ runner.os }}-composer- | ||
# Configure Caching | ||
- name: Get composer cache directory | ||
id: composer-cache | ||
run: echo "::set-output name=dir::$(composer config cache-files-dir)" | ||
|
||
# Dependencies | ||
- name: 'Install Release Dependencies' | ||
run: | | ||
rm -rf vendor | ||
composer install --no-dev --prefer-dist --no-interaction --verbose | ||
sudo chmod +x ./.github/scripts/* | ||
- name: Cache dependencies | ||
uses: actions/cache@v4 | ||
with: | ||
path: ${{ steps.composer-cache.outputs.dir }} | ||
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} | ||
restore-keys: ${{ runner.os }}-composer- | ||
|
||
- name: Get version | ||
run: .github/scripts/version.sh | ||
# Dependencies | ||
- name: 'Install Release Dependencies' | ||
run: | | ||
rm -rf vendor | ||
composer install --no-dev --prefer-dist --no-interaction --verbose | ||
sudo chmod +x ./.github/scripts/* | ||
- name: Discord Message | ||
id: discord | ||
run: .github/scripts/discord.sh | ||
- name: Get version | ||
run: .github/scripts/version.sh | ||
|
||
- name: Build Distro | ||
run: .github/scripts/build.sh | ||
- name: Discord Message | ||
id: discord | ||
run: .github/scripts/discord.sh | ||
|
||
- name: Upload S3 | ||
uses: shallwefootball/s3-upload-action@master | ||
with: | ||
aws_key_id: ${{ secrets.S3_BUILD_ARTIFACTS_ACCESS_KEY_ID }} | ||
aws_secret_access_key: ${{ secrets.S3_BUILD_ARTIFACTS_SECRET_ACCESS_KEY}} | ||
aws_bucket: ${{ secrets.S3_BUCKET_NAME }} | ||
source_dir: 'dist' | ||
destination_dir: '' | ||
|
||
- name: Discord notification | ||
uses: Ilshidur/[email protected] | ||
env: | ||
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} | ||
with: | ||
args: ${{ steps.discord.outputs.discord_msg }} | ||
- name: Build Distro | ||
run: .github/scripts/build.sh | ||
|
||
- name: Upload artifact for deployment job | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: phpvms-package | ||
path: 'dist/*' | ||
- uses: altinukshini/deployment-action@releases/v1 | ||
name: start deployment | ||
id: deployment | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN}} | ||
description: Uploading files to CDN | ||
environment: production | ||
|
||
- uses: BetaHuhn/do-spaces-action@v2 | ||
id: spaces | ||
with: | ||
access_key: ${{ secrets.SPACE_ACCESS_KEY}} | ||
secret_key: ${{ secrets.SPACE_SECRET_KEY }} | ||
space_name: ${{ secrets.SPACE_NAME }} | ||
space_region: ${{ secrets.SPACE_REGION }} | ||
source: dist | ||
cdn_domain: phpvms.cdn.vmslabs.net | ||
permission: public-read | ||
|
||
- name: Upload S3 | ||
uses: shallwefootball/s3-upload-action@master | ||
with: | ||
aws_key_id: ${{ secrets.S3_BUILD_ARTIFACTS_ACCESS_KEY_ID }} | ||
aws_secret_access_key: ${{ secrets.S3_BUILD_ARTIFACTS_SECRET_ACCESS_KEY}} | ||
aws_bucket: ${{ secrets.S3_BUCKET_NAME }} | ||
source_dir: 'dist' | ||
destination_dir: '' | ||
|
||
- name: Discord notification | ||
uses: Ilshidur/[email protected] | ||
env: | ||
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} | ||
with: | ||
args: ${{ steps.discord.outputs.discord_msg }} | ||
|
||
- name: Upload artifact for deployment job | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: phpvms-package | ||
path: 'dist/*' | ||
|
||
# - name: update deployment status | ||
# if: always() | ||
# uses: altinukshini/deployment-status@releases/v1 | ||
# with: | ||
# token: ${{ secrets.GITHUB_TOKEN }} | ||
# state: ${{ job.status }} | ||
# environment_url: ${{ steps.spaces.outputs.output_url }} | ||
# deployment_id: ${{ steps.deployment.outputs.deployment_id }} | ||
# description: "Successfully uploaded files to CDN" | ||
|
||
# This runs after all of the tests, run have run. Creates a cleaned up version of the | ||
# distro, and then creates the artifact to push up to S3 or wherever | ||
|
@@ -182,7 +215,7 @@ jobs: | |
name: 'Create Release' | ||
needs: artifacts | ||
runs-on: ubuntu-latest | ||
if: startsWith(github.ref, 'refs/tags/') | ||
if: github.repository == 'nabeelio/phpvms' && startsWith(github.ref, 'refs/tags/') | ||
steps: | ||
|
||
- name: Download artifact from build job | ||
|
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
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
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
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
Oops, something went wrong.