Merge branch 'main' of github.com:open-source-solution-design/Modern-Container-Application-Reference-Architecture

This commit is contained in:
Haitao Pan 2024-04-12 21:07:39 +08:00
commit 763f5ed39e
9 changed files with 334 additions and 16 deletions

View File

@ -0,0 +1,19 @@
name: argocd job
on:
pull_request:
branches: ["main", "stable", "release/v*"]
workflow_dispatch:
branches:
- main
jobs:
argocd-job:
name:
uses: svc-design/actions/.github/workflows/workflows-call-gitops.yaml@main
with:
apiserver: "https://35.200.69.238:6443"
namespace: "itsm-dev"
helmfile: "helm_releases/apps/redis"
config_repo: "https://github.com/svc-design/gitops.git"
secrets:
KUBE_CONFIG: ${{ secrets.KUBE_CONFIG }}

View File

@ -0,0 +1,44 @@
name: Setup ArgoCD Server
env:
STATE: "create" # 可以根据需要更改初始状态, 可选createupdate, destroy
CLOUD: "gcp" # 选择云服务商, 可选: gcp, aws, ali, azure
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
on:
pull_request:
push:
paths:
- '.github/workflows/iac-pipeline-signal-cluster-argo-server.yml'
workflow_dispatch:
branches:
- main
jobs:
apply-cluster-resources:
uses: svc-design/actions/.github/workflows/setup-gcp-cloud.yml@main
with:
config: 'signal-cluster-config-argo-server.yaml'
secrets:
SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
setup-k3s-cluster-with-argo-server:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster-argocd.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'argocd'
ssh_host_name: 'argocd'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
VAULT_URL: ${{ secrets.VAULT_URL }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- apply-cluster-resources

View File

@ -0,0 +1,74 @@
name: Setup Chaos-mesh Server
env:
STATE: "create" # 可以根据需要更改初始状态, 可选createupdate, destroy
CLOUD: "gcp" # 选择云服务商, 可选: gcp, aws, ali, azure
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
on:
pull_request:
push:
paths:
- '.github/workflows/iac-pipeline-signal-cluster-chaos-mesh.yml'
workflow_dispatch:
branches:
- main
jobs:
apply-cluster-resources:
uses: svc-design/actions/.github/workflows/setup-gcp-cloud.yml@main
with:
config: 'signal-cluster-config-chaosmesh-server.yaml'
secrets:
SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
setup-k3s-cluster:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'chaosmesh'
ssh_host_name: 'chaosmesh'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
VAULT_URL: ${{ secrets.VAULT_URL }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- apply-cluster-resources
setup-iac-pipeline-signal-cluster-chaos-mesh-server:
uses: svc-design/actions/.github/workflows/setup-chaos-mesh.yaml@main
with:
domain: 'onwalk.net'
cluster_name: 'chaosmesh'
ssh_host_name: 'chaosmesh'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- setup-k3s-cluster
setup-deepflow-server:
uses: svc-design/actions/.github/workflows/setup-deepflow-server.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'chaosmesh'
ssh_host_name: 'chaosmesh'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- setup-k3s-cluster

View File

@ -29,7 +29,7 @@ jobs:
setup-k3s-cluster:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster.yml@main
with:
domain: 'svc-dev.ink'
domain: 'onwalk.net'
cluster_name: 'monitor'
ssh_host_name: 'monitor'
secrets:
@ -43,17 +43,15 @@ jobs:
needs:
- apply-cluster-resources
setup-observability-tools:
uses: svc-design/actions/.github/workflows/setup-observability-server.yml@main
with:
domain: 'svc-dev.ink'
cluster_name: 'monitor'
ssh_host_name: 'monitor'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- setup-k3s-cluster
# argocd-job:
# name:
# uses: svc-design/actions/.github/workflows/workflows-call-gitops.yaml@main
# with:
# apiserver: "https://35.200.69.238:6443"
# namespace: "itsm-dev"
# helmfile: "helm_releases/apps/redis"
# config_repo: "https://github.com/svc-design/gitops.git"
# secrets:
# KUBE_CONFIG: ${{ secrets.KUBE_CONFIG }}
# needs:
# - setup-k3s-cluster

View File

@ -0,0 +1,61 @@
name: Setup harbor Server with IAC
env:
STATE: "create" # 可以根据需要更改初始状态, 可选createupdate, destroy
CLOUD: "gcp" # 选择云服务商, 可选: gcp, aws, ali, azure
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
on:
pull_request:
push:
paths:
- '.github/workflows/setup-harbor-server.yml'
workflow_dispatch:
branches:
- main
jobs:
apply-cluster-resources:
uses: svc-design/actions/.github/workflows/setup-gcp-cloud.yml@main
with:
config: 'signal-cluster-config-chaosmesh-server.yaml'
secrets:
SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
setup-k3s-cluster:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'chaosmesh'
ssh_host_name: 'chaosmesh'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
VAULT_URL: ${{ secrets.VAULT_URL }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- apply-cluster-resources
setup-iac-pipeline-signal-cluster-harbor-server:
uses: svc-design/actions/.github/workflows/setup-harbor-server.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'chaosmesh'
ssh_host_name: 'chaosmesh'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
OSS_AK: ${{ secrets.OSS_AK }}
OSS_SK: ${{ secrets.OSS_SK }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- setup-k3s-cluster

View File

@ -0,0 +1,60 @@
name: Setup Jenkins Server
env:
STATE: "create" # 可以根据需要更改初始状态, 可选createupdate, destroy
CLOUD: "gcp" # 选择云服务商, 可选: gcp, aws, ali, azure
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
on:
pull_request:
push:
paths:
- '.github/workflows/iac-pipeline-signal-cluster-jenkins.yml'
workflow_dispatch:
branches:
- main
jobs:
apply-cluster-resources:
uses: svc-design/actions/.github/workflows/setup-gcp-cloud.yml@main
with:
config: 'signal-cluster-config-jenkins-server.yaml'
secrets:
SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
setup-k3s-cluster:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster.yml@main
with:
domain: 'onwalk.net'
cluster_name: 'jenkins'
ssh_host_name: 'jenkins'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
VAULT_URL: ${{ secrets.VAULT_URL }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- apply-cluster-resources
setup-jenkins-server:
uses: svc-design/actions/.github/workflows/setup-jenkins-server.yaml@main
with:
domain: 'onwalk.net'
cluster_name: 'jenkins'
ssh_host_name: 'jenkins'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
ADMIN_PASSWORD: ${{ secrets.ADMIN_INIT_PASSWORD }}
needs:
- setup-k3s-cluster

View File

@ -0,0 +1,60 @@
name: Signal K3S Cluster Pipeline Keycloak with IAC tools
env:
STATE: "create" # 可以根据需要更改初始状态, 可选createupdate, destroy
CLOUD: "gcp" # 选择云服务商, 可选: gcp, aws, ali, azure
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
on:
pull_request:
push:
paths:
- '.github/workflows/iac-pipeline-signal-cluster-keycloak.yml'
workflow_dispatch:
branches:
- main
jobs:
apply-cluster-resources:
uses: svc-design/actions/.github/workflows/setup-gcp-cloud.yml@main
with:
config: 'signal-cluster-config.yaml'
secrets:
SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
setup-k3s-cluster:
uses: svc-design/actions/.github/workflows/setup-k3s-cluster.yml@main
with:
domain: 'svc-dev.ink'
cluster_name: 'monitor'
ssh_host_name: 'monitor'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
VAULT_URL: ${{ secrets.VAULT_URL }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
SSH_USER: ${{ secrets.HOST_USER }}
needs:
- apply-cluster-resources
setup-keycloak-server:
uses: svc-design/actions/.github/workflows/setup-keycloak-server.yml@main
with:
domain: 'svc-dev.ink'
cluster_name: 'monitor'
ssh_host_name: 'monitor'
secrets:
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
DNS_AK: ${{ secrets.DNS_AK }}
DNS_SK: ${{ secrets.DNS_SK }}
SSH_USER: ${{ secrets.HOST_USER }}
ADMIN_PASSWORD: ${{ secrets.ADMIN_INIT_PASSWORD }}
needs:
- setup-k3s-cluster

View File

@ -21,6 +21,8 @@ Follow the links above to the documentation in your preferred language to get st
We welcome contributions to this project. If you have suggestions, improvements, or find any issues, feel free to submit a pull request.
## License
This project is released under the GPL V3 license. For more details, see the LICENSE file.

@ -1 +1 @@
Subproject commit dc0d88f7d05e244765524effe3e2f9489f0cccbd
Subproject commit 5128bb769bbb35400b0869776b36b14a86219ac7