Skip to content

Commit

Permalink
chore: Add CI
Browse files Browse the repository at this point in the history
  • Loading branch information
erezrokah committed Aug 3, 2023
1 parent 8f71136 commit a95de97
Show file tree
Hide file tree
Showing 6 changed files with 148 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .github/.kodiak.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
version = 1

[approve]
auto_approve_usernames = ["cq-bot"]

[merge.message]
body = "pull_request_body"
cut_body_after = "Use the following steps to ensure your PR is ready to be reviewed"
cut_body_and_text = true
cut_body_before = "<!-- 🎉 Thank you for making CloudQuery awesome by submitting a PR 🎉 -->"
title = "pull_request_title"

[merge]
blocking_labels = ["wip", "no automerge"]
notify_on_conflict = false
3 changes: 3 additions & 0 deletions .github/renovate.json5
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
extends: ["github>cloudquery/.github//.github/renovate-node-default.json5"],
}
49 changes: 49 additions & 0 deletions .github/workflows/pr_title.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: "Validate PR title"

on:
pull_request_target:
types:
- opened
- edited
- synchronize

jobs:
main:
name: Validate PR title
runs-on: ubuntu-latest
steps:
# Please look up the latest version from
# https://github.com/amannn/action-semantic-pull-request/releases
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
# Configure which types are allowed.
# Default: https://github.com/commitizen/conventional-commit-types
types: |
fix
feat
chore
refactor
test
# Configure that a scope must always be provided.
requireScope: false
# If `subjectPattern` is configured, you can use this property to override
# the default error message that is shown when the pattern doesn't match.
# The variables `subject` and `title` can be used within the message.
subjectPatternError: |
The subject "{subject}" found in the pull request title "{title}"
didn't match the configured pattern. Please ensure that the subject
starts with an uppercase character.
# For work-in-progress PRs you can typically use draft pull requests
# from Github. However, private repositories on the free plan don't have
# this option and therefore this action allows you to opt-in to using the
# special "[WIP]" prefix to indicate this state. This will avoid the
# validation of the PR title and the pull request checks remain pending.
# Note that a second check will be reported if this is enabled.
wip: true
# When using "Squash and merge" on a PR with only one commit, GitHub
# will suggest using that commit message instead of the PR title for the
# merge commit, and it's easy to commit this by mistake. Enable this option
# to also validate the commit message for one commit PRs.
validateSingleCommit: false
25 changes: 25 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: publish
on:
push:
tags:
- "v*.*.*"

jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: "temurin"
java-version: "18"
cache: "gradle"
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@ccb4328a959376b642e027874838f60f8e596de3
- name: Publish package
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: publish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
35 changes: 35 additions & 0 deletions .github/workflows/regen.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Generate JavsScript Code from plugin-pb
on:
schedule:
- cron: "0 8 * * *"
workflow_dispatch:

jobs:
regen:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
cache: "npm"
node-version: "16"

- name: Generate code
run: |
npm run proto-clone
npm run build
- name: Create Pull Request
uses: peter-evans/create-pull-request@v4
with:
# required so the PR triggers workflow runs
token: ${{ secrets.GH_CQ_BOT }}
branch: fix/gen_proto
base: main
title: "fix: Generate Python Code from `plugin-pb`"
commit-message: "fix: Generate Python Code from `plugin-pb`"
body: This PR was created by a scheduled workflow to regenerate the Python code from `plugin-pb`.
author: cq-bot <[email protected]>
labels: automerge
21 changes: 21 additions & 0 deletions .github/workflows/release_pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: release-please
on:
push:
branches:
- main

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: google-github-actions/release-please-action@v3
id: release
with:
release-type: node
package-name: plugin-pb-js
token: ${{ secrets.GH_CQ_BOT }}
pull-request-title-pattern: "chore${scope}: Release${component} v${version}"
# Should breaking changes before 1.0.0 produce minor bumps?
bump-minor-pre-major: true
# Should feat changes before 1.0.0 produce patch bumps instead of minor bumps?
bump-patch-for-minor-pre-major: true

0 comments on commit a95de97

Please sign in to comment.