mirror of
https://github.com/valitydev/configurations.git
synced 2024-11-06 01:45:23 +00:00
Add workflows and sync configuration (#2)
* Add workflows and sync configuration * Trigger Build * Trying to exclude basic-linters.yml * Add newway in default group for testing * Fix workflow reference for thrift build * Add repo list sync action * Add only source parameter * Trying with one line string * Trying with one line string without EOF * Fix with foreach * Temporary switch base branch to dev branch * Finalyze actions and settings
This commit is contained in:
parent
b11d6471a7
commit
8702fd7ca9
2
.github/settings.yml
vendored
Normal file
2
.github/settings.yml
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
# These settings are synced to GitHub by https://probot.github.io/apps/settings/
|
||||
_extends: .github
|
30
.github/sync.yml
vendored
Normal file
30
.github/sync.yml
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
group:
|
||||
- id: default
|
||||
files:
|
||||
- source: workflows/base/basic-linters.yml
|
||||
dest: .github/workflows/basic-linters.yml
|
||||
- source: LICENSE
|
||||
dest: LICENSE
|
||||
- source: .github/settings.yml
|
||||
replace: false
|
||||
repos: |-
|
||||
valitydev/damsel
|
||||
valitydev/newway
|
||||
|
||||
- id: proto
|
||||
files:
|
||||
- source: workflows/proto/
|
||||
dest: .github/workflows/
|
||||
deleteOrphaned: true
|
||||
exclude: |
|
||||
basic-linters.yml
|
||||
repos: |-
|
||||
valitydev/damsel
|
||||
|
||||
- id: java
|
||||
files:
|
||||
- source: codeowners/java
|
||||
dest: CODEOWNERS
|
||||
replace: false
|
||||
repos: |-
|
||||
valitydev/newway
|
20
.github/workflows/sync-files.yml
vendored
Normal file
20
.github/workflows/sync-files.yml
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
name: Sync files
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
jobs:
|
||||
sync:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: ⤵️ Check out code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: 🔄 Sync repo files
|
||||
uses: valitydev/repo-file-sync-action@v1
|
||||
with:
|
||||
GH_PAT: ${{ secrets.GH_PAT }}
|
||||
GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
|
||||
BRANCH_PREFIX: update/
|
83
.github/workflows/sync-repo-list.yml
vendored
Normal file
83
.github/workflows/sync-repo-list.yml
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
name: Sync repo list in sync.yml file
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
schedule:
|
||||
- cron: 0 * * * *
|
||||
|
||||
env:
|
||||
repo_limit: 1000
|
||||
|
||||
jobs:
|
||||
workflows-sync:
|
||||
name: Sync repositories for ${{ matrix.group }} group
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- group: default
|
||||
languages: >-
|
||||
all
|
||||
|
||||
- group: proto
|
||||
languages: >-
|
||||
thrift
|
||||
|
||||
- group: java
|
||||
languages: >-
|
||||
java
|
||||
kotlin
|
||||
steps:
|
||||
- name: ⤵️ Check out code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: 📤 Get a list of repositories for ${{ matrix.group }} group
|
||||
id: repo-list
|
||||
run: |
|
||||
REPOSITORIES=""
|
||||
for language in ${{ matrix.languages }}; do
|
||||
LANGUAGE_ARGS=""
|
||||
if [[ $language != "all" ]]; then
|
||||
LANGUAGE_ARGS="-l $language"
|
||||
fi
|
||||
REPOSITORIES+=$(gh repo list \
|
||||
$OWNER \
|
||||
--source \
|
||||
--no-archived \
|
||||
-L $repo_limit \
|
||||
$LANGUAGE_ARGS \
|
||||
--json name,owner \
|
||||
-q '.|=sort_by(.name)| .[] | [.owner.login, .name] | join("/")')
|
||||
REPOSITORIES+=" "
|
||||
done
|
||||
REPOSITORIES=$(echo $REPOSITORIES | sort | uniq | tr " " "\n")
|
||||
REPOSITORIES="${REPOSITORIES//'%'/'%25'}"
|
||||
REPOSITORIES="${REPOSITORIES//$'\n'/'%0A'}"
|
||||
REPOSITORIES="${REPOSITORIES//$'\r'/'%0D'}"
|
||||
echo "::set-output name=repositories::$REPOSITORIES"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
OWNER: ${{ github.repository_owner }}
|
||||
|
||||
- name: 🔄 Update sync.yml file for ${{ matrix.group }} group
|
||||
uses: fjogeleit/yaml-update-action@master
|
||||
with:
|
||||
valueFile: ".github/sync.yml"
|
||||
propertyPath: >-
|
||||
$.group[?(@.id == "${{ matrix.group }}")].repos
|
||||
value: ${{ steps.repo-list.outputs.repositories }}
|
||||
updateFile: true
|
||||
commitChange: false
|
||||
|
||||
- name: 📤 Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
with:
|
||||
base: master
|
||||
branch: updates/${{ matrix.group }}
|
||||
title: "Update repo list for ${{ matrix.group }} group"
|
||||
commit-message: "Update repo list for ${{ matrix.group }} group"
|
||||
add-paths: |
|
||||
.github/sync.yml
|
1
codeowners/java
Normal file
1
codeowners/java
Normal file
@ -0,0 +1 @@
|
||||
* @valitydev/java
|
11
workflows/base/auto-tag.yml
Normal file
11
workflows/base/auto-tag.yml
Normal file
@ -0,0 +1,11 @@
|
||||
name: Vality auto-tags
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
- "main"
|
||||
|
||||
jobs:
|
||||
tag-action:
|
||||
uses: valitydev/base-workflows/.github/workflows/auto-tag.yml@v1
|
10
workflows/base/basic-linters.yml
Normal file
10
workflows/base/basic-linters.yml
Normal file
@ -0,0 +1,10 @@
|
||||
name: Vality basic linters
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- "*"
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
uses: valitydev/base-workflows/.github/workflows/basic-linters.yml@v1
|
34
workflows/proto/erlang-pr.yml
Normal file
34
workflows/proto/erlang-pr.yml
Normal file
@ -0,0 +1,34 @@
|
||||
name: Erlang build
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- "*"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build and verify
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- uses: valitydev/action-setup-thrift@v1
|
||||
|
||||
- uses: erlef/setup-beam@v1
|
||||
id: beam
|
||||
with:
|
||||
otp-version: "24"
|
||||
rebar3-version: "3.18"
|
||||
|
||||
- name: Restore PLT cache
|
||||
uses: actions/cache@v2
|
||||
id: plt-cache
|
||||
with:
|
||||
key: |
|
||||
${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-plt
|
||||
path: |
|
||||
_build/default/rebar3_*_plt
|
||||
|
||||
- run: rebar3 compile
|
||||
- run: rebar3 xref
|
||||
- run: rebar3 dialyzer
|
17
workflows/proto/java-deploy.yml
Normal file
17
workflows/proto/java-deploy.yml
Normal file
@ -0,0 +1,17 @@
|
||||
name: Java deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
- "main"
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
uses: valitydev/java-workflow/.github/workflows/maven-thrift-deploy.yml@v1
|
||||
secrets:
|
||||
server-username: ${{ secrets.OSSRH_USERNAME }}
|
||||
server-password: ${{ secrets.OSSRH_TOKEN }}
|
||||
deploy-secret-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }}
|
||||
deploy-secret-key-password: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
|
||||
mm-webhook-url: ${{ secrets.MATTERMOST_WEBHOOK_URL }}
|
10
workflows/proto/java-pr.yml
Normal file
10
workflows/proto/java-pr.yml
Normal file
@ -0,0 +1,10 @@
|
||||
name: Java build
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- "*"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: valitydev/java-workflow/.github/workflows/maven-thrift-build.yml@v1
|
Loading…
Reference in New Issue
Block a user