diff --git a/.github/workflows/pull-db-tests.yml b/.github/workflows/pull-db-tests.yml index bef1df151..b3b02f15c 100644 --- a/.github/workflows/pull-db-tests.yml +++ b/.github/workflows/pull-db-tests.yml @@ -41,7 +41,7 @@ jobs: with: go-version: ">=1.20.0" - name: Add hosts to /etc/hosts - run: echo "127.0.0.1 pgsql ldap minio" | sudo tee -a /etc/hosts + run: '[ -e "/.dockerenv" ] || [ -e "/run/.containerenv" ] || echo "127.0.0.1 pgsql ldap minio" | sudo tee -a /etc/hosts' - run: make deps-backend - run: make backend env: @@ -119,7 +119,7 @@ jobs: with: go-version: ">=1.20.0" - name: Add hosts to /etc/hosts - run: echo "127.0.0.1 mysql elasticsearch smtpimap" | sudo tee -a /etc/hosts + run: '[ -e "/.dockerenv" ] || [ -e "/run/.containerenv" ] || echo "127.0.0.1 mysql elasticsearch smtpimap" | sudo tee -a /etc/hosts' - run: make deps-backend - run: make backend env: @@ -166,7 +166,7 @@ jobs: with: go-version: ">=1.20.0" - name: Add hosts to /etc/hosts - run: echo "127.0.0.1 mysql elasticsearch smtpimap" | sudo tee -a /etc/hosts + run: '[ -e "/.dockerenv" ] || [ -e "/run/.containerenv" ] || echo "127.0.0.1 mysql elasticsearch smtpimap" | sudo tee -a /etc/hosts' - run: make deps-backend - run: make backend env: @@ -195,7 +195,7 @@ jobs: with: go-version: ">=1.20.0" - name: Add hosts to /etc/hosts - run: echo "127.0.0.1 mysql8" | sudo tee -a /etc/hosts + run: '[ -e "/.dockerenv" ] || [ -e "/run/.containerenv" ] || echo "127.0.0.1 mysql8" | sudo tee -a /etc/hosts' - run: make deps-backend - run: make backend env: @@ -223,7 +223,7 @@ jobs: with: go-version: ">=1.20.0" - name: Add hosts to /etc/hosts - run: echo "127.0.0.1 mssql" | sudo tee -a /etc/hosts + run: '[ -e "/.dockerenv" ] || [ -e "/run/.containerenv" ] || echo "127.0.0.1 mssql" | sudo tee -a /etc/hosts' - run: make deps-backend - run: make backend env: diff --git a/tests/e2e/README.md b/tests/e2e/README.md index 2d9a0ab8f..bf444ddb8 100644 --- a/tests/e2e/README.md +++ b/tests/e2e/README.md @@ -22,9 +22,9 @@ npx playwright install-deps ``` -## Run all tests via local drone +## Run all tests via local act_runner ``` -drone exec --local --build-event "pull_request" +act_runner exec -W ./.github/workflows/pull-e2e-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest ``` ## Run sqlite e2e tests diff --git a/tests/integration/README.md b/tests/integration/README.md index 636949df3..f4e006131 100644 --- a/tests/integration/README.md +++ b/tests/integration/README.md @@ -15,9 +15,26 @@ Make sure to perform a clean build before running tests: make clean build ``` -## Run all tests via local drone +## Run tests via local act_runner + +### Run all jobs + ``` -drone exec --local --build-event "pull_request" +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest +``` + +Warning: This file defines many jobs, so it will be resource-intensive and therefor not recommended. + +### Run single job + +```SHELL +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -j +``` + +You can list all job names via: + +```SHELL +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -l ``` ## Run sqlite integration tests diff --git a/tests/integration/README_ZH.md b/tests/integration/README_ZH.md index 384023247..a924892f8 100644 --- a/tests/integration/README_ZH.md +++ b/tests/integration/README_ZH.md @@ -12,9 +12,25 @@ make test-sqlite make clean build ``` -## 如何在本地 drone 服务器上运行所有测试 +## 如何在本地 act_runner 上运行测试 + +### 运行所有任务 + ``` -drone exec --local --build-event "pull_request" +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest +``` + +警告:由于在此文件中定义了许多任务,因此此操作将花费太多的CPU和内存来运行。所以不建议这样做。 + +### 运行单个任务 + +```SHELL +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -j +``` + +您可以通过以下方式列出所有任务名称: +```SHELL +act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -l ``` ## 如何使用 sqlite 数据库进行集成测试