Skip to content

Commit

Permalink
ci: add central workflows including release-please (#15)
Browse files Browse the repository at this point in the history
* chore: add CODEOWNERS file

* ci: add linters and terraform-docs workflow

* ci: add release-please workflow and associated files

* docs(terraform-docs): generate docs and write to README.adoc

Co-authored-by: lentidas <lentidas@users.noreply.github.com>

Release-As: v1.0.0-alpha.1
  • Loading branch information
lentidas authored Nov 18, 2022
1 parent 8b6ee0d commit 92da6a5
Show file tree
Hide file tree
Showing 8 changed files with 614 additions and 2 deletions.
9 changes: 9 additions & 0 deletions .github/workflows/linters.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
name: "Linters"

on:
pull_request:

jobs:
linters:
uses: camptocamp/devops-stack/.github/workflows/modules-linters.yaml@master
11 changes: 11 additions & 0 deletions .github/workflows/release-please.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: "Release"

on:
push:
branches:
- "main"

jobs:
release:
uses: camptocamp/devops-stack/.github/workflows/modules-release-please.yaml@master
11 changes: 11 additions & 0 deletions .github/workflows/terraform-docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: "Terraform Docs"

on:
pull_request:

jobs:
terraform-docs:
uses: camptocamp/devops-stack/.github/workflows/modules-terraform-docs.yaml@master
with:
variants: "bootstrap"
1 change: 1 addition & 0 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @camptocamp/is-devops-stack
297 changes: 297 additions & 0 deletions README.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,297 @@
// BEGIN_TF_DOCS
=== Requirements

The following requirements are needed by this module:

- [[requirement_htpasswd]] <<requirement_htpasswd,htpasswd>> (~> 0.9)

- [[requirement_jwt]] <<requirement_jwt,jwt>> (>= 0.0.3)

- [[requirement_random]] <<requirement_random,random>> (~> 3.0)

- [[requirement_time]] <<requirement_time,time>> (~> 0.6)

=== Providers

The following providers are used by this module:

- [[provider_argocd]] <<provider_argocd,argocd>>

- [[provider_null]] <<provider_null,null>>

- [[provider_utils]] <<provider_utils,utils>>

=== Modules

No modules.

=== Resources

The following resources are used by this module:

- https://registry.terraform.io/providers/oboukili/argocd/latest/docs/resources/application[argocd_application.this] (resource)
- https://registry.terraform.io/providers/oboukili/argocd/latest/docs/resources/project[argocd_project.this] (resource)
- https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource[null_resource.dependencies] (resource)
- https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource[null_resource.this] (resource)
- https://registry.terraform.io/providers/cloudposse/utils/latest/docs/data-sources/deep_merge_yaml[utils_deep_merge_yaml.values] (data source)

=== Required Inputs

No required inputs.
=== Optional Inputs

The following input variables are optional (have default values):

==== [[input_argocd]] <<input_argocd,argocd>>

Description: ArgoCD settings

Type: `any`

Default: `{}`

==== [[input_argocd_namespace]] <<input_argocd_namespace,argocd_namespace>>

Description: n/a

Type: `string`

Default: `"argocd"`

==== [[input_argocd_server_secretkey]] <<input_argocd_server_secretkey,argocd_server_secretkey>>

Description: ArgoCD Server Secert Key to avoid regenerate token on redeploy.

Type: `string`

Default: `null`

==== [[input_base_domain]] <<input_base_domain,base_domain>>

Description: The base domain used for Ingresses.

Type: `string`

Default: `""`

==== [[input_bootstrap_values]] <<input_bootstrap_values,bootstrap_values>>

Description: Helm values generated by bootstrap module

Type: `any`

Default: `[]`

==== [[input_cluster_issuer]] <<input_cluster_issuer,cluster_issuer>>

Description: Cluster Issuer

Type: `string`

Default: `""`

==== [[input_cluster_name]] <<input_cluster_name,cluster_name>>

Description: The name of the cluster to create.

Type: `string`

Default: `""`

==== [[input_dependency_ids]] <<input_dependency_ids,dependency_ids>>

Description: n/a

Type: `map(string)`

Default: `{}`

==== [[input_helm_values]] <<input_helm_values,helm_values>>

Description: Helm values, passed as a list of HCL structures.

Type: `any`

Default:
[source,json]
----
[
{}
]
----

==== [[input_namespace]] <<input_namespace,namespace>>

Description: n/a

Type: `string`

Default: `"argocd"`

==== [[input_oidc]] <<input_oidc,oidc>>

Description: OIDC Settings

Type: `any`

Default: `null`

==== [[input_repositories]] <<input_repositories,repositories>>

Description: A list of repositories to add to ArgoCD.

Type: `map(map(string))`

Default: `{}`

==== [[input_target_revision]] <<input_target_revision,target_revision>>

Description: Override of target revision of the application chart.

Type: `string`

Default: `"v1.0.0"`

=== Outputs

The following outputs are exported:

==== [[output_id]] <<output_id,id>>

Description: n/a
// END_TF_DOCS
// BEGIN_TF_TABLES
= Requirements

[cols="a,a",options="header,autowidth"]
|===
|Name |Version
|[[requirement_htpasswd]] <<requirement_htpasswd,htpasswd>> |~> 0.9
|[[requirement_jwt]] <<requirement_jwt,jwt>> |>= 0.0.3
|[[requirement_random]] <<requirement_random,random>> |~> 3.0
|[[requirement_time]] <<requirement_time,time>> |~> 0.6
|===

= Providers

[cols="a,a",options="header,autowidth"]
|===
|Name |Version
|[[provider_argocd]] <<provider_argocd,argocd>> |n/a
|[[provider_null]] <<provider_null,null>> |n/a
|[[provider_utils]] <<provider_utils,utils>> |n/a
|===

= Resources

[cols="a,a",options="header,autowidth"]
|===
|Name |Type
|https://registry.terraform.io/providers/oboukili/argocd/latest/docs/resources/application[argocd_application.this] |resource
|https://registry.terraform.io/providers/oboukili/argocd/latest/docs/resources/project[argocd_project.this] |resource
|https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource[null_resource.dependencies] |resource
|https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource[null_resource.this] |resource
|https://registry.terraform.io/providers/cloudposse/utils/latest/docs/data-sources/deep_merge_yaml[utils_deep_merge_yaml.values] |data source
|===

= Inputs

[cols="a,a,a,a,a",options="header,autowidth"]
|===
|Name |Description |Type |Default |Required
|[[input_argocd]] <<input_argocd,argocd>>
|ArgoCD settings
|`any`
|`{}`
|no

|[[input_argocd_namespace]] <<input_argocd_namespace,argocd_namespace>>
|n/a
|`string`
|`"argocd"`
|no

|[[input_argocd_server_secretkey]] <<input_argocd_server_secretkey,argocd_server_secretkey>>
|ArgoCD Server Secert Key to avoid regenerate token on redeploy.
|`string`
|`null`
|no

|[[input_base_domain]] <<input_base_domain,base_domain>>
|The base domain used for Ingresses.
|`string`
|`""`
|no

|[[input_bootstrap_values]] <<input_bootstrap_values,bootstrap_values>>
|Helm values generated by bootstrap module
|`any`
|`[]`
|no

|[[input_cluster_issuer]] <<input_cluster_issuer,cluster_issuer>>
|Cluster Issuer
|`string`
|`""`
|no

|[[input_cluster_name]] <<input_cluster_name,cluster_name>>
|The name of the cluster to create.
|`string`
|`""`
|no

|[[input_dependency_ids]] <<input_dependency_ids,dependency_ids>>
|n/a
|`map(string)`
|`{}`
|no

|[[input_helm_values]] <<input_helm_values,helm_values>>
|Helm values, passed as a list of HCL structures.
|`any`
|

[source]
----
[
{}
]
----

|no

|[[input_namespace]] <<input_namespace,namespace>>
|n/a
|`string`
|`"argocd"`
|no

|[[input_oidc]] <<input_oidc,oidc>>
|OIDC Settings
|`any`
|`null`
|no

|[[input_repositories]] <<input_repositories,repositories>>
|A list of repositories to add to ArgoCD.
|`map(map(string))`
|`{}`
|no

|[[input_target_revision]] <<input_target_revision,target_revision>>
|Override of target revision of the application chart.
|`string`
|`"v1.0.0"`
|no

|===

= Outputs

[cols="a,a",options="header,autowidth"]
|===
|Name |Description
|[[output_id]] <<output_id,id>> |n/a
|===
// END_TF_TABLES
Loading

0 comments on commit 92da6a5

Please sign in to comment.