release/0.4.0 #60
4 changed files with 1 additions and 159 deletions
|
|
@ -4,7 +4,7 @@ on:
|
|||
push:
|
||||
branches: ['release/*']
|
||||
pull_request:
|
||||
branches: [main]
|
||||
branches: [main, 'release/*']
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
|
|
|
|||
45
.github/workflows/lint.yml
vendored
45
.github/workflows/lint.yml
vendored
|
|
@ -1,45 +0,0 @@
|
|||
name: linter
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- develop
|
||||
- main
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
quality:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: '8.4'
|
||||
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
||||
npm install
|
||||
|
||||
- name: Run Pint
|
||||
run: vendor/bin/pint
|
||||
|
||||
- name: Format Frontend
|
||||
run: npm run format
|
||||
|
||||
- name: Lint Frontend
|
||||
run: npm run lint
|
||||
|
||||
# - name: Commit Changes
|
||||
# uses: stefanzweifel/git-auto-commit-action@v5
|
||||
# with:
|
||||
# commit_message: fix code style
|
||||
# commit_options: '--no-verify'
|
||||
50
.github/workflows/tests.yml
vendored
50
.github/workflows/tests.yml
vendored
|
|
@ -1,50 +0,0 @@
|
|||
name: tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- develop
|
||||
- main
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: 8.4
|
||||
tools: composer:v2
|
||||
coverage: xdebug
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '22'
|
||||
cache: 'npm'
|
||||
|
||||
- name: Install Node Dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Build Assets
|
||||
run: npm run build
|
||||
|
||||
- name: Install Dependencies
|
||||
run: composer install --no-interaction --prefer-dist --optimize-autoloader
|
||||
|
||||
- name: Copy Environment File
|
||||
run: cp .env.example .env
|
||||
|
||||
- name: Generate Application Key
|
||||
run: php artisan key:generate
|
||||
|
||||
- name: Tests
|
||||
run: ./vendor/bin/phpunit
|
||||
63
Jenkinsfile
vendored
63
Jenkinsfile
vendored
|
|
@ -1,63 +0,0 @@
|
|||
pipeline {
|
||||
agent any
|
||||
|
||||
triggers {
|
||||
GenericTrigger(
|
||||
causeString: 'Triggered on tag push',
|
||||
token: 'tag-trigger-secret',
|
||||
printContributedVariables: true,
|
||||
printPostContent: true,
|
||||
regexpFilterExpression: 'ref=refs/tags/.*\nafter=(?!0{40}).*',
|
||||
regexpFilterText: '$ref\n$after',
|
||||
genericVariables: [
|
||||
[key: 'ref', value: '$.ref'],
|
||||
[key: 'after', value: '$.after']
|
||||
]
|
||||
)
|
||||
}
|
||||
|
||||
environment {
|
||||
REGISTRY = 'codeberg.org'
|
||||
IMAGE_NAME = "${REGISTRY}/lvl0/incr"
|
||||
DOCKER_CREDENTIALS_ID = 'codeberg-registry'
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Tag Push Filter') {
|
||||
steps {
|
||||
script {
|
||||
if (!env.ref?.startsWith('refs/tags/')) {
|
||||
echo "Not a tag push (ref = ${env.ref}). Skipping build."
|
||||
currentBuild.result = 'NOT_BUILT'
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build & Push Docker Image') {
|
||||
when {
|
||||
expression {
|
||||
return env.ref?.startsWith('refs/tags/') && env.after != null && env.after != "0000000000000000000000000000000000000000"
|
||||
}
|
||||
}
|
||||
steps {
|
||||
script {
|
||||
def tagName = env.ref.replaceFirst(/^refs\/tags\//, '')
|
||||
def cleanedTag = tagName.replaceFirst(/^v/, '')
|
||||
|
||||
sh "docker build -t $IMAGE_NAME:$cleanedTag -f docker/Dockerfile ."
|
||||
|
||||
withCredentials([usernamePassword(credentialsId: "$DOCKER_CREDENTIALS_ID", usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]) {
|
||||
sh """
|
||||
echo "$PASSWORD" | docker login $REGISTRY -u "$USERNAME" --password-stdin
|
||||
docker push $IMAGE_NAME:$cleanedTag
|
||||
docker tag $IMAGE_NAME:$cleanedTag $IMAGE_NAME:latest
|
||||
docker push $IMAGE_NAME:latest
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue