sud*_*zen 3 redis docker github-actions
我对 GitHub actions 和 Redis 还很陌生。我正在 GitHub 操作上运行此 CI(代码如下)
name: sanity check
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
tests:
runs-on: ubuntu-latest
strategy:
matrix:
redis-version: [6]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: "14"
- uses: supercharge/redis-github-action@1.2.0 # sets up Redis
with:
redis-version: ${{ matrix.redis-version }}
- run: node -v
- run: yarn -v
# - run: redis-cli ping
- run: yarn install
- run: yarn test --detectOpenHandles
Run Code Online (Sandbox Code Playgroud)
这样我就可以使用 Redis 执行集成测试,但是这个 CI 不会退出(我正在使用 Jest 运行测试)
是因为我没有使用 Docker 吗?我需要做什么来确保该测试退出?在本地,它运行良好(不过我手动启动 Redis 服务器)。我需要 Docker 才能使其正常工作吗?如果这是问题的话,有关于如何在 GitHub 操作上使用 Redis 运行 Docker 的链接吗?
PS:如果您需要更多相关信息,请告诉我
您可能不需要此 redis 操作,并且不需要任何与 docker 相关的内容(尽管如果您愿意,您可以使用 docker 运行 redis)。
只需安装即可redis-server,如果您需要 redis CLI,也可以redis-tools。
以下是安装并 ping redis 服务器的示例 GitHub Action:
name: Redis test
on: [push]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install redis
run: sudo apt-get install -y redis-tools redis-server
- name: Verify that redis is up
run: redis-cli ping
Run Code Online (Sandbox Code Playgroud)
如果您更喜欢使用该操作,这里是一个工作流程:
name: Redis test
on: [push]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup redis
uses: supercharge/redis-github-action@1.2.0
with:
redis-version: 6
- name: Install redis cli # so we can test the server
run: sudo apt-get install -y redis-tools
- name: Verify that redis is up
run: redis-cli ping
Run Code Online (Sandbox Code Playgroud)
最后,如果您的 GitHub Action 没有退出,则可能是与最近5 月 20 日、5 月 18 日或5 月 16 日发生的 GitHub Actions 中断之一相关的问题。
如果不是上述任何一种情况,则问题可能与 Redis 无关,您可能需要减少“活动部件”的数量,直到看到有问题的部件。
| 归档时间: |
|
| 查看次数: |
2972 次 |
| 最近记录: |