add secrets; add action to build and deploy
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
name: Build and Deploy Docker
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Log in to GHCR
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: git.rhost.ovh
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.TOKEN }}
|
||||
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./service/Dockerfile
|
||||
push: true
|
||||
tags: git.rhost.ovh/${{ github.repository }}:latest
|
||||
deploy:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Deploy via SSH
|
||||
uses: appleboy/ssh-action@v1.2.0
|
||||
with:
|
||||
host: ${{ secrets.SERVER_HOST }}
|
||||
port: ${{ secrets.SERVER_PORT }}
|
||||
username: ${{ secrets.SERVER_USER }}
|
||||
key: ${{ secrets.SERVER_SSH_KEY }}
|
||||
script: |
|
||||
cd /home/ryjek/docker/taxes
|
||||
docker compose pull
|
||||
docker compose up -d
|
||||
docker compose exec --workdir /var/www/html www APP_RUNTIME_ENV=prod php bin/console secrets:decrypt-to-local --force
|
||||
docker compose exec --workdir /var/www/html www php ./bin/console doctrine:migration:migrate --dry-run
|
||||
docker compose exec --workdir /var/www/html www php ./bin/console cache:clear
|
||||
@@ -13,6 +13,7 @@ services:
|
||||
networks:
|
||||
- internal
|
||||
www:
|
||||
image: git.rhost.ovh/ryjek/taxes:latest
|
||||
restart: on-failure
|
||||
build:
|
||||
context: .
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
APP_ENV=prod
|
||||
APP_SECRET=%env(APP_SECRET)%
|
||||
MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0
|
||||
DATABASE_URL="postgresql://%env(DATABASE_USER)%:%env(DATABASE_PASSWORD)%@database:5432/taxes?serverVersion=13&charset=utf8"
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php // prod.APP_SECRET.1cf811 on Thu, 09 Jul 2026 09:49:02 +0000
|
||||
|
||||
return "\xBA\xC4\xD6\xFF\x1Bq\xEF\x21o\x8D\xC4\xD8\xA1\x99\x9D0XT\xA5\x90\x97j\xD1\x90\xA3\x3E\xCB\xAA\x1F\xEB\xE5l\xEFY\xB9\x16\x3D\xE99\xF3\xCA\x0E\xE2\xBErs0\xEC\xBB\x22\x5E\x0C\x93\xA3\xDD\x93\x60\x88\xD9\x0A76\x1A\xCE\x14\x3CD\x17\xC3\xEAT\xAE\x2F\xB95\x16j\xD0\x27T\xE9\x868HB\xFCwx\x04\x3C\x28\xEBi\x92\xDF\xF5\x98\x3E\xD9\x21K\xBE\xACm\x29\xA5\x8A\xFD\x80\xCF\xA6\xDE\xDB\x05t\x26\x96\xDC\x15B\xABh\x81\x83\xDB\xF9\xD9\xECg\xD7d\xC2Y\x9D\x2B\xAF\x15\x40\x26\xDF\xF4\xCDC\x85\xC1\xCFsDE\xF3\x13\x13\xCB\x0C\x9B\x1F\xCBpj\xD5\xBB\x09\x99W\xF55\x21\x06u\x03\xA1E\x87\xB6JU";
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php // prod.DATABASE_PASSWORD.b77cc3 on Thu, 09 Jul 2026 09:32:43 +0000
|
||||
|
||||
return "\x28\xF4k\x14O\x98d\xD3\xA5\xD3\xE5\x02Hoa\xE5jok\x1C8\xCA\x1D\xF0\xF6\xF9\xBC\xAE\x08\xCB\xC1\x03\xAD\x8E\xBB\x16\x60r\x09\xBCe\xB6\x09\xB5\x8E\x09\x22\x0F\xDB\x8A\xC42\xCC\xF5k\x1D\xCA\xE9\xD92USS\xE1";
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php // prod.DATABASE_USER.4d7edf on Thu, 09 Jul 2026 09:41:54 +0000
|
||||
|
||||
return "\xD0\x09\xD1\x96\x96\x16\x00\x94.\x28\x8F\xDE\xE9\xE2\x98-\xD3\xA4\xE4\xBB\x98\x5C4\x0B\xEF\xB2\x15\xE1\xE3\x01\xF0e4v8\x92\x20\x17\x05\x5C\x96g\xF6\x92\xC4\x08\x92\xF6\xCF\xE8\xD9\x7B\xFC\x9A\x05\x0D\x5D";
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php // prod.encrypt.public on Thu, 09 Jul 2026 09:29:52 +0000
|
||||
|
||||
return "\xA59\xA5\x8A\xF3\x02\x9A\xE8r\xDFQ\xCB4\x96\x91\x0E\x40qhg\x0E\x3F\x12\x7D\x06\x0E\x86\x93\x91\xA2H\x10";
|
||||
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'APP_SECRET' => null,
|
||||
'DATABASE_PASSWORD' => null,
|
||||
'DATABASE_USER' => null,
|
||||
];
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Helper;
|
||||
final class ClearTypes
|
||||
{
|
||||
public static function clearInt($input): int
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace App\Logic\Dividends;
|
||||
|
||||
use App\Helper\Currency;
|
||||
use App\Helper\DataNeed\DividendValues;
|
||||
use ClearTypes;
|
||||
use App\Helper\ClearTypes;
|
||||
use PhpOffice\PhpSpreadsheet\Shared\Date;
|
||||
|
||||
class SheetData extends SheetDataAll
|
||||
|
||||
+6
-14
@@ -17,10 +17,6 @@ RUN apt-get update && apt-get -y install curl
|
||||
|
||||
COPY --from=composer /usr/bin/composer /usr/bin/composer
|
||||
|
||||
RUN mkdir -p /var/www/.composer
|
||||
RUN chown www-data /var/www/.composer
|
||||
|
||||
|
||||
RUN apt-get install -y \
|
||||
libzip-dev \
|
||||
zip \
|
||||
@@ -52,17 +48,13 @@ COPY services/config/entrypoint.sh /etc/entrypoint.sh
|
||||
|
||||
RUN chmod +x /etc/entrypoint.sh
|
||||
COPY --chown=www-data:www-data ./project /var/www/html
|
||||
#COPY --chown=www-data:www-data ./index.php /var/www/html
|
||||
|
||||
|
||||
#WORKDIR /var/www/html/src/composer
|
||||
#RUN composer install --ignore-platform-reqs --no-scripts
|
||||
|
||||
#COPY --from=minimalise --chown=www-data /var/www/html/src/scripts_generated /var/www/html/src/scripts_generated
|
||||
WORKDIR /var/www/html
|
||||
#RUN composer install
|
||||
#RUN npm install
|
||||
#RUN npm run build
|
||||
#RUN apt-get purge --auto-remove -y npm
|
||||
|
||||
RUN mv .env.prod .env
|
||||
RUN composer install --ignore-platform-reqs --no-scripts
|
||||
RUN npm install
|
||||
RUN npm run build
|
||||
RUN apt-get purge --auto-remove -y npm
|
||||
|
||||
ENTRYPOINT ["/etc/entrypoint.sh"]
|
||||
Reference in New Issue
Block a user