diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 77a33e9..5e75cf3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,7 @@ defaults: shell: pwsh jobs: - update: + build: runs-on: ubuntu-latest env: PYTHONUTF8: 1 @@ -27,10 +27,10 @@ jobs: run: | python -m pip install -r ./requirements.txt sed -i 's/\"package\"/\"image\"/' ./config.json - - name: Checkout pages - run: | - git fetch origin gh-pages - git worktree add ./dist gh-pages + # - name: Checkout pages + # run: | + # git fetch origin gh-pages + # git worktree add ./dist gh-pages - name: Force update if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && startsWith(github.event.head_commit.message, '[update]') }} run: | @@ -38,14 +38,37 @@ jobs: - name: Run run: | python -m index + - name: Upload pages artifact + uses: actions/upload-pages-artifact@v4 + with: + path: ./dist - name: Upload artifact uses: actions/upload-artifact@v4 with: name: dist path: ./dist - - name: Deploy GitHub Pages - uses: JamesIves/github-pages-deploy-action@v4 + - name: Upload artifact + uses: actions/upload-artifact@v4 with: - token: ${{ secrets.PA_TOKEN }} - branch: gh-pages - folder: ./dist \ No newline at end of file + name: cache + path: | + ./cache + !./cache/*/wheels + # uses: JamesIves/github-pages-deploy-action@v4 + # with: + # token: ${{ secrets.PA_TOKEN }} + # branch: gh-pages + # folder: ./dist + deploy: + needs: build + permissions: + pages: write + id-token: write + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/config.json b/config.json index 26c3c51..117248a 100644 --- a/config.json +++ b/config.json @@ -2,16 +2,7 @@ "dist": "./dist", "cache": "./cache", "packages": [ - "python", - "aexpy", - "generator-oj-problem", - "coxbuild", - "click", - "Flask", - "requests", - "tornado", - "PyYAML", - "jinja2" + "generator-oj-problem" ], "worker": "package" } \ No newline at end of file diff --git a/index/processor.py b/index/processor.py index 0bbba71..f384064 100644 --- a/index/processor.py +++ b/index/processor.py @@ -110,15 +110,13 @@ def version(self, release: Release): ] ) result.save(dis) - result.save(self.dist.preprocess(release)) - result.ensure() + result.ensure().save(self.dist.preprocess(release)) with self.doOnce(JOB_EXTRACT, str(release)) as _: if _ is None: env.logger.info(f"Extract release {release}") result = self.worker.extract([str(self.worker.resolvePath(dis)), "-"]) result.save(api) - result.save(self.dist.extract(release)) - result.ensure() + result.ensure().save(self.dist.extract(release)) def pair(self, pair: ReleasePair): env.logger.info(f"Process release pair {pair}") @@ -137,15 +135,13 @@ def pair(self, pair: ReleasePair): ] ) result.save(cha) - result.save(self.dist.diff(pair)) - result.ensure() + result.ensure().save(self.dist.diff(pair)) with self.doOnce(JOB_REPORT, str(pair)) as _: if _ is None: env.logger.info(f"Report releas pair {pair}") result = self.worker.report([str(self.worker.resolvePath(cha)), "-"]) result.save(rep) - result.save(self.dist.report(pair)) - result.ensure() + result.ensure().save(self.dist.report(pair)) def getReleases(self, project: str): from .release import single diff --git a/index/std.py b/index/std.py index 391debf..24df9ef 100644 --- a/index/std.py +++ b/index/std.py @@ -80,8 +80,7 @@ def version(self, release): ] ) result.save(dis) - result.save(self.dist.preprocess(release)) - result.ensure() + result.ensure().save(self.dist.preprocess(release)) removeMain(rootPath) @@ -130,8 +129,7 @@ def version(self, release): ) finalResult.save(api) - finalResult.save(self.dist.extract(release)) - finalResult.ensure() + finalResult.ensure().save(self.dist.extract(release)) @override def pair(self, pair): @@ -149,14 +147,12 @@ def pair(self, pair): if _ is None: result = self.worker.diff([str(oldA), str(newA), "-"]) result.save(cha) - result.save(self.dist.diff(pair)) - result.ensure() + result.ensure().save(self.dist.diff(pair)) with self.doOnce(JOB_REPORT, str(pair)) as _: if _ is None: result = self.worker.report([str(cha), "-"]) result.save(rep) - result.save(self.dist.report(pair)) - result.ensure() + result.ensure().save(self.dist.report(pair)) @override def getReleases(self, project):