diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..bb47a57 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,57 @@ +name: Deploy + +on: + push: + branches: + - main + +jobs: + deploy: + runs-on: spot + + env: + COMPOSER_NO_INTERACTION: "1" + COMPOSER_HOME: .composer + DEPLOY_PATH: /var/www/spot + npm_config_cache: .npm-cache + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Check runner tools + run: | + command -v composer + command -v npm + command -v rsync + + - name: Check deploy path + run: | + test -d "$DEPLOY_PATH" + test -w "$DEPLOY_PATH" + + - name: Validate Composer configuration + run: composer validate --no-check-publish + + - name: Install PHP dependencies + run: composer install --no-dev --prefer-dist --optimize-autoloader + + - name: Install npm dependencies + run: npm ci + + - name: Build frontend + run: npm run prod + + - name: Deploy to production + run: | + rsync -az --delete \ + --exclude ".git/" \ + --exclude ".gitea/" \ + --exclude ".composer/" \ + --exclude ".npm-cache/" \ + --exclude "node_modules/" \ + --exclude "config/settings.php" \ + --exclude "files/" \ + --exclude "geo/" \ + --exclude "gaia/" \ + ./ "$DEPLOY_PATH/" diff --git a/composer.json b/composer.json index c9820c8..72013a4 100644 --- a/composer.json +++ b/composer.json @@ -4,8 +4,8 @@ "type": "project", "repositories": [ { - "type": "path", - "url": "../objects" + "type": "git", + "url": "https://git.lutran.fr/franzz/objects" } ], "require": { diff --git a/composer.lock b/composer.lock index f998022..993ff4e 100644 --- a/composer.lock +++ b/composer.lock @@ -4,15 +4,15 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "12bb836a394b645df50c14652a2ae5bf", + "content-hash": "3ff17875c13e3d001ef6ba3353e933e5", "packages": [ { "name": "franzz/objects", "version": "dev-vue", - "dist": { - "type": "path", - "url": "../objects", - "reference": "c0c0b21290b5ee617158c6152cac809eccd67472" + "source": { + "type": "git", + "url": "https://git.lutran.fr/franzz/objects", + "reference": "eb9f2f4cacbb3526d371b345f5bed29eb84c597f" }, "type": "library", "autoload": { @@ -21,9 +21,7 @@ } }, "description": "Objects", - "transport-options": { - "relative": true - } + "time": "2026-05-12T09:11:09+00:00" }, { "name": "phpmailer/phpmailer",