Skip to content

Commit

Permalink
Merge pull request #58 from OpsLevel/kr/final-wip-demo-sandbox
Browse files Browse the repository at this point in the history
Kr/final wip demo sandbox
  • Loading branch information
rocktavious authored Dec 23, 2024
2 parents 33988bf + 13666dd commit 598039e
Show file tree
Hide file tree
Showing 15 changed files with 165 additions and 415 deletions.
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: "Custom Actions Handler"
name: "Create Sandbox"

on:
repository_dispatch:
types:
- actions
- sandbox
workflow_dispatch:
inputs:
api_token:
Expand Down
13 changes: 7 additions & 6 deletions modules/demo_account/hierarchy.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,16 @@ module "product" {
description = "The system that manages the order workflow."
owner = module.product-engineering-team.this.id
services = [
module.order-workflow.this.id,
module.order-fulfillment.this.id
module.services_from_csv["order-routing"].this.id,
module.services_from_csv["order-fulfillment"].this.id
]
},
{
name = "Shopping Cart"
description = "The system that manages the shopping cart."
owner = module.product-engineering-team.this.id
services = [
module.shopping-cart.this.id
module.services_from_csv["shopping-cart"].this.id,
]
}
]
Expand All @@ -35,16 +35,17 @@ module "product" {
description = "The system that manages inventory procurement."
owner = module.inventory-team.this.id
services = [
module.procurement-service.this.id
module.services_from_csv["inventory-restock"].this.id,
module.services_from_csv["inventory-sync"].this.id
]
},
{
name = "Tooling"
description = "Internal tools that help Big River Books employees."
owner = module.internal-tools-team.this.id
services = [
module.certificate-manager.this.id,
module.employee-directory.this.id
module.services_from_csv["employee-directory"].this.id,
module.services_from_csv["certificate-manager"].this.id,
]
}
]
Expand Down
14 changes: 7 additions & 7 deletions modules/demo_account/rubric_bronze.tf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ module "service_owner_defined" {
name = "Owner is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true
}

Expand All @@ -15,7 +15,7 @@ module "service_repo_defined" {
name = "Repository is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true
}

Expand All @@ -25,7 +25,7 @@ module "service_tier_defined" {
name = "Tier is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

property = "tier_index"
Expand All @@ -38,7 +38,7 @@ module "branch_protection" {
name = "Default Branch is Protected"
category = opslevel_rubric_category.all["security"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true
}

Expand All @@ -48,7 +48,7 @@ module "has_sentry" {
name = "Has Error Tracking"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "errors"
Expand All @@ -64,7 +64,7 @@ module "has_deployed_this_qtr" {
name = "[UPCOMING] Has Deployed this Quarter"
category = opslevel_rubric_category.all["observability"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = false

days = 90
Expand All @@ -76,7 +76,7 @@ module "has_dependencies" {
name = "Has Defined Dependencies"
category = opslevel_rubric_category.all["observability"].id
level = opslevel_rubric_level.all["bronze"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true
}

Expand Down
14 changes: 7 additions & 7 deletions modules/demo_account/rubric_gold.tf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ module "service_product_defined" {
name = "Product is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

property = "product"
Expand All @@ -16,7 +16,7 @@ module "service_system_defined" {
name = "System is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

property = "system"
Expand All @@ -28,7 +28,7 @@ module "has_runbooks" {
name = "Runbooks Defined"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "runbooks"
Expand All @@ -40,7 +40,7 @@ module "slos_defined" {
name = "[UPCOMING] Has SLOs Defined"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = false
}

Expand All @@ -50,7 +50,7 @@ module "fast_deploys" {
name = "CD is Fast"
category = opslevel_rubric_category.all["performance"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tag_key = "deploy_speed"
Expand All @@ -66,7 +66,7 @@ module "has_deployed_this_sprint" {
name = "Has Deployed this Sprint"
category = opslevel_rubric_category.all["observability"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

days = 14
Expand All @@ -78,7 +78,7 @@ module "check_package_version_testutils" {
name = "Uses Latest Test Framework"
category = opslevel_rubric_category.all["security"].id
level = opslevel_rubric_level.all["gold"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

package_constraint = "matches_version"
Expand Down
10 changes: 5 additions & 5 deletions modules/demo_account/rubric_platinum.tf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ module "manual_approval" {
notes = "Approving this check you solemnly swear you have finished all your homework!"
category = opslevel_rubric_category.all["misc"].id
level = opslevel_rubric_level.all["platinum"].id
owner = module.ai-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true
}

Expand All @@ -15,7 +15,7 @@ module "has_gremlin" {
name = "Performs Choas Experiments"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["platinum"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "other"
Expand All @@ -35,7 +35,7 @@ module "has_sentry_stg" {
name = "Has Error Tracking in Staging"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["platinum"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "errors"
Expand All @@ -51,7 +51,7 @@ module "mttr" {
name = "MTTR < 2 hours"
category = opslevel_rubric_category.all["performance"].id
level = opslevel_rubric_level.all["platinum"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tag_key = "mttr"
Expand All @@ -67,7 +67,7 @@ module "check_package_version_codecov" {
name = "Uses Latest CodeCov"
category = opslevel_rubric_category.all["security"].id
level = opslevel_rubric_level.all["platinum"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

package_constraint = "matches_version"
Expand Down
12 changes: 6 additions & 6 deletions modules/demo_account/rubric_silver.tf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ module "service_lifecycle_defined" {
name = "Lifecycle is Defined"
category = opslevel_rubric_category.all["quality"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

property = "lifecycle_index"
Expand All @@ -16,7 +16,7 @@ module "has_splunk" {
name = "Has Logging Dashboard"
category = opslevel_rubric_category.all["observability"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "logs"
Expand All @@ -32,7 +32,7 @@ module "has_datadog" {
name = "Has Monitoring Dashboard"
category = opslevel_rubric_category.all["observability"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "metrics"
Expand All @@ -48,7 +48,7 @@ module "has_pagerduty" {
name = "Has Alerting/Paging System"
category = opslevel_rubric_category.all["reliability"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tool_category = "incidents"
Expand All @@ -64,7 +64,7 @@ module "fast_builds" {
name = "CI is Fast"
category = opslevel_rubric_category.all["performance"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

tag_key = "build_speed"
Expand All @@ -80,7 +80,7 @@ module "package_version_github_checkout" {
name = "Uses Latest GA Checkout"
category = opslevel_rubric_category.all["security"].id
level = opslevel_rubric_level.all["silver"].id
owner = module.internal-tools-team.this.id
owner = module.teams_from_csv["internal-tools"].this.id
enabled = true

package_constraint = "matches_version"
Expand Down
15 changes: 13 additions & 2 deletions modules/demo_account/scripts/sample_deploys.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,25 @@
#! /bin/bash

deploy() {
curl -s -X POST $1 \
# Detect if we are on macOS or Linux
if [[ "$OSTYPE" == "darwin"* ]]; then
# macOS date command
formatted_date=$(date -u $3 '+%FT%TZ')
else
# Linux date command
# Replace `-v` flag and format the input for Linux `date`
adjusted=$(echo $3 | sed 's/-v //g' | sed 's/H/hour/g; s/d/day/g')
formatted_date=$(date -u -d "$adjusted" '+%FT%TZ')
fi

curl -s -X POST "$1" \
-H 'content-type: application/json' \
-d '{
"service": "'"$2"'",
"deployer": {
"email": "'"$5"'"
},
"deployed_at": "'"$(date -u $3 '+%FT%TZ')"'",
"deployed_at": "'"$formatted_date"'",
"description": "CI Pipeline: #'"$4"'",
"commit": {
"sha": "'"$(openssl rand -hex 24)"'"
Expand Down
Loading

0 comments on commit 598039e

Please sign in to comment.