Add cloudwatch-logs StartQuery
and GetQueryResults
#1013
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Node CI | |
# Push tests pushes; PR tests merges | |
on: [ push, pull_request ] | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
# Test the build | |
build: | |
# Setup | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
node-version: [ 16.x, 18.x, 20.x ] | |
os: [ windows-latest, ubuntu-latest, macOS-latest ] | |
# Go | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Env | |
run: | | |
echo "Event name: ${{ github.event_name }}" | |
echo "Git ref: ${{ github.ref }}" | |
echo "GH actor: ${{ github.actor }}" | |
echo "SHA: ${{ github.sha }}" | |
VER=`node --version`; echo "Node ver: $VER" | |
VER=`npm --version`; echo "npm ver: $VER" | |
echo "OS ver: ${{ runner.os }}" | |
- name: Install | |
run: npm install | |
- name: Test (Node.js 16.x only) | |
if: matrix.node-version == '16.x' | |
run: npm run test:nolint | |
env: | |
CI: true | |
- name: Test | |
if: matrix.node-version != '16.x' | |
run: npm test | |
env: | |
CI: true | |
- name: Test (live AWS) | |
if: env.AWS_ACCESS_KEY_ID != '' && env.AWS_SECRET_ACCESS_KEY != '' | |
run: npm run test:live | |
env: | |
CI: true | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
- name: Notify | |
uses: sarisia/actions-status-discord@v1 | |
# Only fire alert once | |
if: github.ref == 'refs/heads/main' && failure() && matrix.node-version == '20.x' && matrix.os == 'ubuntu-latest' | |
with: | |
webhook: ${{ secrets.DISCORD_WEBHOOK }} | |
title: "build and test" | |
color: 0x222222 | |
username: GitHub Actions | |
# ----- Only package publishing beyond this point ----- # | |
# Publish client to package registries | |
publish-client: | |
# Setup | |
needs: build | |
if: startsWith(github.ref, 'refs/tags/v') | |
runs-on: ubuntu-latest | |
# Go | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
registry-url: https://registry.npmjs.org/ | |
# Publish to npm | |
- name: Publish client@RC to npm | |
if: contains(github.ref, 'RC') | |
run: npm publish --tag RC | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Publish client@latest to npm | |
if: contains(github.ref, 'RC') == false #'!contains()'' doesn't work lol | |
run: npm publish | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Notify | |
uses: sarisia/actions-status-discord@v1 | |
if: always() | |
with: | |
webhook: ${{ secrets.DISCORD_WEBHOOK }} | |
title: "npm publish" | |
color: 0x222222 | |
username: GitHub Actions | |
# Publish modules to package registries | |
publish-modules: | |
# Setup | |
needs: build | |
if: github.ref == 'refs/heads/main' | |
runs-on: ubuntu-latest | |
# Go | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
registry-url: https://registry.npmjs.org/ | |
# Publish to npm | |
# Use this weird npm installation so we don't have to install all devdeps to run the publish script | |
# tbh @actions/setup-node should just include @actions/core | |
- name: Publish plugins@latest to npm | |
id: publish | |
run: | | |
cd scripts | |
echo {} > package.json | |
npm i @actions/core | |
cd .. | |
npm run publish-plugins | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Publish aws-lite.org | |
if: contains(github.ref, 'RC') == false && steps.publish.outputs.publish | |
uses: actions/github-script@v7 | |
with: | |
github-token: ${{ secrets.ARC_TOKEN }} | |
script: | | |
github.rest.actions.createWorkflowDispatch({ | |
owner: 'architect', | |
repo: 'aws-lite.org', | |
workflow_id: 'build.yml', | |
ref: 'main', | |
}) | |
- name: Notify | |
uses: sarisia/actions-status-discord@v1 | |
if: always() | |
with: | |
webhook: ${{ secrets.DISCORD_WEBHOOK }} | |
title: "npm run publish-plugins" | |
color: 0x222222 | |
username: GitHub Actions |