我们有一组 GitHub Actions,让你可以管理已经运行的 JetStream 服务器,这对于管理发布或建立测试基础设施非常有用。
完整详细信息和示例在 jetstream-gh-actions 仓库中,这里是一个示例。
on: push
name: orders
jobs:
# 首先我们删除 ORDERS 流和消费者(如果它们已经存在)
clean_orders:
runs-on: ubuntu-latest
steps:
- name: orders_stream
uses: nats-io/jetstream-gh-action/delete/stream@master
with:
missing_ok: 1
stream: ORDERS
server: js.example.net
# 现在我们使用与上面显示的 nats CLI 实用程序相同的配置文件创建流和消费者
create_orders:
runs-on: ubuntu-latest
needs: clean_orders
steps:
- uses: actions/checkout@master
- name: orders_stream
uses: nats-io/jetstream-gh-action/create/stream@master
with:
config: ORDERS.json
server: js.example.net
- name: orders_new_consumer
uses: nats-io/jetstream-gh-action/create/consumer@master
with:
config: ORDERS_NEW.json
stream: ORDERS
server: js.example.net
# 我们将消息发布到特定主题,也许某个消费者正在那里等待它来启动测试
publish_message:
runs-on: ubuntu-latest
needs: create_orders
steps:
- uses: actions/checkout@master
- name: orders_new_consumer
uses: nats-io/jetstream-gh-action@master
with:
subject: ORDERS.deployment
message: Published new deployment via "${{ github.event_name }}" in "${{ github.repository }}"
server: js.example.net