diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..183dda2 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,34 @@ +name: Manual Deploy + +on: + workflow_dispatch: + inputs: + target: + description: "Target service" + required: true + default: "app_default" + type: choice + options: + - app_default + - app_tis + - both + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Deploy locally (manual trigger only) + run: | + if [ "${{ inputs.target }}" = "app_default" ]; then + docker compose build app_default + docker compose up -d app_default + elif [ "${{ inputs.target }}" = "app_tis" ]; then + docker compose build app_tis + docker compose up -d app_tis + else + docker compose build app_default app_tis + docker compose up -d app_default app_tis + fi diff --git a/.gitea/workflows/production.yml b/.gitea/workflows/production.yml new file mode 100644 index 0000000..339c96b --- /dev/null +++ b/.gitea/workflows/production.yml @@ -0,0 +1,44 @@ +name: Production CI + +on: + push: + branches: + - main + - master + pull_request: + +jobs: + validate-and-build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: pnpm + + - name: Setup pnpm + uses: pnpm/action-setup@v4 + with: + version: 10 + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: TypeScript check + run: pnpm -s exec tsc -p tsconfig.app.json --noEmit + + - name: Build default tenant + run: pnpm build + + - name: Build tis tenant + run: pnpm build:tis + + - name: Docker build default + run: docker compose build app_default + + - name: Docker build tis + run: docker compose build app_tis