Compare commits
46 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e489f73f7c | ||
|
|
554b7774f6 | ||
|
|
86ea9d5b38 | ||
|
|
a61da34f2a | ||
|
|
225754dfe5 | ||
|
|
6e358fe1eb | ||
|
|
a2da2698e3 | ||
|
|
ee017d7ae6 | ||
|
|
b0b5211e88 | ||
|
|
c6f0220889 | ||
|
|
b1cd1cf0bf | ||
|
|
dab6504e71 | ||
|
|
e361e998b3 | ||
|
|
bc73625121 | ||
|
|
a2439f3619 | ||
|
|
edfb1b92cb | ||
|
|
1097e4c313 | ||
|
|
fe10a8d4b0 | ||
|
|
96da4ce1b0 | ||
|
|
6aad92a0c6 | ||
|
|
7fc7db0577 | ||
|
|
e5ed2d9556 | ||
|
|
fbe4e736c8 | ||
|
|
bc635d5b76 | ||
|
|
c3a9c69c91 | ||
|
|
b043bb9cc9 | ||
|
|
d9afa9b558 | ||
|
|
4f0b873bed | ||
|
|
fb067d5396 | ||
|
|
dbaf7c4880 | ||
|
|
4750c53b58 | ||
|
|
aa0ce72d35 | ||
| 6360e6495f | |||
|
|
ed2f797ac2 | ||
|
|
91f91c20fa | ||
| 2f7d276781 | |||
| e22306225b | |||
| 6a860a4d75 | |||
| 5ff89b905f | |||
| 49b017de3d | |||
| 937b673be6 | |||
| 3e04d0a82d | |||
| 706e8e9892 | |||
| 154292530a | |||
| 82c3f7bb78 | |||
| e7f8f278ee |
3
.env
3
.env
@@ -13,7 +13,7 @@
|
|||||||
#
|
#
|
||||||
# Run "composer dump-env prod" to compile .env files for production use (requires symfony/flex >=1.2).
|
# Run "composer dump-env prod" to compile .env files for production use (requires symfony/flex >=1.2).
|
||||||
# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration
|
# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration
|
||||||
|
APP_URL=
|
||||||
###> symfony/framework-bundle ###
|
###> symfony/framework-bundle ###
|
||||||
APP_ENV=prod
|
APP_ENV=prod
|
||||||
APP_SECRET=
|
APP_SECRET=
|
||||||
@@ -27,6 +27,7 @@ APP_SECRET=
|
|||||||
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4"
|
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4"
|
||||||
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
|
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
|
||||||
# DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=16&charset=utf8"
|
# DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=16&charset=utf8"
|
||||||
|
DATABASE_URL=
|
||||||
|
|
||||||
###< doctrine/doctrine-bundle ###
|
###< doctrine/doctrine-bundle ###
|
||||||
MERCURE_JWT_SECRET="!ChangeThisMercureHubJWTSecretKey!"
|
MERCURE_JWT_SECRET="!ChangeThisMercureHubJWTSecretKey!"
|
||||||
|
|||||||
102
.gitea/workflows/ci.yml
Normal file
102
.gitea/workflows/ci.yml
Normal file
@@ -0,0 +1,102 @@
|
|||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "v*"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repo
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
|
- name: Setup PHP
|
||||||
|
uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: '8.4'
|
||||||
|
|
||||||
|
- name: Install phing
|
||||||
|
run: composer global require phing/phing
|
||||||
|
|
||||||
|
- name: Run composer
|
||||||
|
run: composer install --no-dev --no-scripts --ignore-platform-reqs -o
|
||||||
|
|
||||||
|
- name: Build tailwind
|
||||||
|
run: APP_ENV=build php bin/console tailwind:build
|
||||||
|
|
||||||
|
- name: Install frontend assets
|
||||||
|
run: APP_ENV=build php bin/console importmap:install
|
||||||
|
|
||||||
|
- name: Compile assets
|
||||||
|
run: APP_ENV=build php bin/console asset-map:compile
|
||||||
|
|
||||||
|
- name: Login to registry
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
registry: "${{ vars.REGISTRY_URL }}"
|
||||||
|
username: "${{ vars.REGISTRY_USER }}"
|
||||||
|
password: "${{ vars.REGISTRY_PASS }}"
|
||||||
|
|
||||||
|
- name: Create torsearch-app docker image
|
||||||
|
run: |
|
||||||
|
tag="${{ gitea.REF_NAME }}"
|
||||||
|
tmdb_api="${{ vars.TMDB_API }}"
|
||||||
|
version=${tag:1}
|
||||||
|
docker build -f docker/Dockerfile.app \
|
||||||
|
-t code.caldwell.digital/home/torsearch-app:${version} \
|
||||||
|
-t code.caldwell.digital/home/torsearch-app:latest \
|
||||||
|
--build-arg "APP_VERSION=${version}" \
|
||||||
|
--build-arg "TMDB_API=${tmdb_api}" \
|
||||||
|
.
|
||||||
|
docker push code.caldwell.digital/home/torsearch-app:${version}
|
||||||
|
docker push code.caldwell.digital/home/torsearch-app:latest
|
||||||
|
|
||||||
|
- name: Create torsearch-worker docker image
|
||||||
|
run: |
|
||||||
|
tag="${{ gitea.REF_NAME }}"
|
||||||
|
tmdb_api="${{ vars.TMDB_API }}"
|
||||||
|
version=${tag:1}
|
||||||
|
docker build -f docker/Dockerfile.worker \
|
||||||
|
-t code.caldwell.digital/home/torsearch-worker:${version} \
|
||||||
|
-t code.caldwell.digital/home/torsearch-worker:latest \
|
||||||
|
--build-arg "APP_VERSION=${version}" \
|
||||||
|
--build-arg "TMDB_API=${tmdb_api}" \
|
||||||
|
.
|
||||||
|
docker push code.caldwell.digital/home/torsearch-worker:${version}
|
||||||
|
docker push code.caldwell.digital/home/torsearch-worker:latest
|
||||||
|
|
||||||
|
- name: Create torsearch-scheduler docker image
|
||||||
|
run: |
|
||||||
|
tag="${{ gitea.REF_NAME }}"
|
||||||
|
tmdb_api="${{ vars.TMDB_API }}"
|
||||||
|
version=${tag:1}
|
||||||
|
docker build -f docker/Dockerfile.scheduler \
|
||||||
|
-t code.caldwell.digital/home/torsearch-scheduler:${version} \
|
||||||
|
-t code.caldwell.digital/home/torsearch-scheduler:latest \
|
||||||
|
--build-arg "APP_VERSION=${version}" \
|
||||||
|
--build-arg "TMDB_API=${tmdb_api}" \
|
||||||
|
.
|
||||||
|
docker push code.caldwell.digital/home/torsearch-scheduler:${version}
|
||||||
|
docker push code.caldwell.digital/home/torsearch-scheduler:latest
|
||||||
|
|
||||||
|
- name: Create artifact
|
||||||
|
run: |
|
||||||
|
file="torsearch-${{ gitea.REF_NAME }}.tar.gz"
|
||||||
|
touch $file
|
||||||
|
tar -cvzf $file --exclude=$file .
|
||||||
|
|
||||||
|
- name: Create release
|
||||||
|
uses: akkuman/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
files: |-
|
||||||
|
"torsearch-${{ gitea.REF_NAME }}.tar.gz"
|
||||||
|
|
||||||
|
# - name: Upload artifact
|
||||||
|
# uses: actions/upload-artifact@v3
|
||||||
|
# with:
|
||||||
|
# name: "torsearch-${{ gitea.REF_NAME }}.tar.gz"
|
||||||
|
# path: "torsearch-${{ gitea.REF_NAME }}.tar.gz"
|
||||||
|
# compression_level: 9
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
pull_request:
|
|
||||||
types: [opened, synchronize, reopened]
|
|
||||||
|
|
||||||
name: SonarQube Scan
|
|
||||||
jobs:
|
|
||||||
sonarqube:
|
|
||||||
name: SonarQube Trigger
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checking out
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
- name: SonarQube Scan
|
|
||||||
uses: https://code.caldwell.digital/tools/sonarqube-action@v0.0.3
|
|
||||||
with:
|
|
||||||
host: "https://qube.caldwell.digital"
|
|
||||||
login: ${{ secrets.SONARQUBE_TOKEN }}
|
|
||||||
projectName: "torsearch"
|
|
||||||
projectBaseDir: "./src"
|
|
||||||
@@ -1,40 +1,43 @@
|
|||||||
sentry:
|
when@prod: &prod
|
||||||
register_error_listener: true # Disables the ErrorListener to avoid duplicated log in sentry
|
sentry:
|
||||||
register_error_handler: true # Disables the ErrorListener, ExceptionListener and FatalErrorListener integrations of the base PHP SDK
|
register_error_listener: true # Disables the ErrorListener to avoid duplicated log in sentry
|
||||||
|
register_error_handler: true # Disables the ErrorListener, ExceptionListener and FatalErrorListener integrations of the base PHP SDK
|
||||||
|
|
||||||
options:
|
options:
|
||||||
release: 'torsearch@%app.version%'
|
release: 'torsearch@%app.version%'
|
||||||
enable_logs: true
|
enable_logs: true
|
||||||
traces_sample_rate: 1
|
traces_sample_rate: 1
|
||||||
profiles_sample_rate: 1
|
profiles_sample_rate: 1
|
||||||
attach_stacktrace: true
|
attach_stacktrace: true
|
||||||
|
|
||||||
tracing:
|
tracing:
|
||||||
enabled: true
|
|
||||||
dbal: # DB queries
|
|
||||||
enabled: true
|
|
||||||
cache: # cache pools
|
|
||||||
enabled: true
|
|
||||||
twig: # templating engine
|
|
||||||
enabled: true
|
enabled: true
|
||||||
|
dbal: # DB queries
|
||||||
|
enabled: true
|
||||||
|
cache: # cache pools
|
||||||
|
enabled: true
|
||||||
|
twig: # templating engine
|
||||||
|
enabled: true
|
||||||
|
|
||||||
services:
|
services:
|
||||||
# (Optionally) Configure the breadcrumb handler as a service (needed for the breadcrumb Monolog handler)
|
# (Optionally) Configure the breadcrumb handler as a service (needed for the breadcrumb Monolog handler)
|
||||||
Sentry\Monolog\BreadcrumbHandler:
|
Sentry\Monolog\BreadcrumbHandler:
|
||||||
arguments:
|
arguments:
|
||||||
- '@Sentry\State\HubInterface'
|
- '@Sentry\State\HubInterface'
|
||||||
- !php/const Monolog\Logger::INFO # Configures the level of messages to capture as breadcrumbs
|
- !php/const Monolog\Logger::INFO # Configures the level of messages to capture as breadcrumbs
|
||||||
monolog:
|
monolog:
|
||||||
handlers:
|
handlers:
|
||||||
# (Optionally) Register the breadcrumb handler as a Monolog handler
|
# (Optionally) Register the breadcrumb handler as a Monolog handler
|
||||||
sentry_breadcrumbs:
|
sentry_breadcrumbs:
|
||||||
type: service
|
type: service
|
||||||
name: sentry_breadcrumbs
|
name: sentry_breadcrumbs
|
||||||
id: Sentry\Monolog\BreadcrumbHandler
|
id: Sentry\Monolog\BreadcrumbHandler
|
||||||
# Register the handler as a Monolog handler to capture messages as events
|
# Register the handler as a Monolog handler to capture messages as events
|
||||||
sentry:
|
sentry:
|
||||||
type: sentry
|
type: sentry
|
||||||
level: !php/const Monolog\Logger::ERROR # Configures the level of messages to capture as events
|
level: !php/const Monolog\Logger::ERROR # Configures the level of messages to capture as events
|
||||||
hub_id: Sentry\State\HubInterface
|
hub_id: Sentry\State\HubInterface
|
||||||
fill_extra_context: true # Enables sending monolog context to Sentry
|
fill_extra_context: true # Enables sending monolog context to Sentry
|
||||||
process_psr_3_messages: false # Disables the resolution of PSR-3 placeholders in reported messages
|
process_psr_3_messages: false # Disables the resolution of PSR-3 placeholders in reported messages
|
||||||
|
|
||||||
|
when@dev: *prod
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ FROM code.caldwell.digital/home/torsearch-app:${APP_VERSION} AS app_image
|
|||||||
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
||||||
|
|
||||||
# Set the APP_VERSION in the image
|
# Set the APP_VERSION in the image
|
||||||
|
ARG APP_VERSION="latest"
|
||||||
ENV APP_VERSION=${APP_VERSION}
|
ENV APP_VERSION=${APP_VERSION}
|
||||||
|
|
||||||
ARG TMDB_API=""
|
ARG TMDB_API=""
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ FROM code.caldwell.digital/home/torsearch-app:${APP_VERSION} AS app_image
|
|||||||
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
||||||
|
|
||||||
# Set the APP_VERSION in the image
|
# Set the APP_VERSION in the image
|
||||||
|
ARG APP_VERSION="latest"
|
||||||
ENV APP_VERSION=${APP_VERSION}
|
ENV APP_VERSION=${APP_VERSION}
|
||||||
|
|
||||||
ARG TMDB_API=""
|
ARG TMDB_API=""
|
||||||
|
|||||||
Reference in New Issue
Block a user