name: Web on: push: branches: ["*"] paths-ignore: - '.devcontainer/**' - '.github/workflows/android.yml' - '.github/workflows/ios.yml' - '.github/workflows/linux.yml' - '.github/workflows/macos.yml' - '.github/workflows/windows.yml' - 'android/**' - 'ios/**' - 'linux/**' - 'macos/**' - 'windows/**' - '.gitignore' - '.gitmodules' - 'README.md' - 'LICENSE' workflow_dispatch: concurrency: group: deploy cancel-in-progress: false jobs: deploy: runs-on: ubuntu-latest steps: - name: Check Out uses: actions/checkout@v4 - name: Setup flutter uses: subosito/flutter-action@v2 with: channel: stable - name: Install wrangler run: npm install wrangler -g - name: Build web run: flutter build web --dart-define=usePathUrl=true - name: Upload env: CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CF_ACCOUNT_ID }} CLOUDFLARE_API_TOKEN: ${{ secrets.CF_API_TOKEN }} run: wrangler pages deploy build/web --project-name=ehf --branch=dev docker: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup flutter uses: subosito/flutter-action@v2 with: channel: stable - name: Build web run: flutter build web --no-web-resources-cdn --base-href /flutter/ --dart-define=usePathUrl=true --dart-define=skipBaseUrl=true - name: Login to DockerHub uses: docker/login-action@v3 with: username: lifegpc password: ${{ secrets.DOCKER_PASSWORD }} - name: Extract metadata for docker id: meta uses: docker/metadata-action@v5 with: images: lifegpc/eh_downloader tags: | type=ref,event=branch type=semver,pattern={{version}} type=semver,pattern={{major}}.{{minor}} - name: Build and push Docker Image uses: docker/build-push-action@v5 with: context: . push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }}