From c0278caa8aa0375ce07f8f46096030b434102530 Mon Sep 17 00:00:00 2001 From: NehalramsuryaB <101209829+NehalramsuryaB@users.noreply.github.com> Date: Tue, 28 Apr 2026 16:50:36 +0530 Subject: [PATCH 1/3] feat: add take-it-live.yaml manifest (skill-connector v2.0) Co-Authored-By: Claude Opus 4.6 (1M context) --- take-it-live.yaml | 60 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 take-it-live.yaml diff --git a/take-it-live.yaml b/take-it-live.yaml new file mode 100644 index 00000000..ecfb2221 --- /dev/null +++ b/take-it-live.yaml @@ -0,0 +1,60 @@ +version: "2.0" + +service: + name: ifsc + type: single + repo: razorpay/ifsc + owner_team: "TBD" + owner_slack: "TBD" + aliases: [] + # special_notes: | + # Add deployment-specific notes here (AWS accounts, namespaces, IAM roles, etc.) + +phases: + - name: local-development + description: "Build, test, lint, and review code" + depends_on: [] + when: + type: always + stages: + - name: build-and-test + depends_on: [] + execution_mode: inline + skills: + - name: shell-agent + config: + description: "Build the binary and run unit tests" + commands: + - "# Add your build command here" + - "# Add your test command here" + + - name: in-prod-deployment + description: "Run readiness checks, deploy to production" + depends_on: [local-development] + when: + type: always + stages: + - name: gng-readiness + depends_on: [] + execution_mode: sub-agent + skills: + - name: gng-readiness + config: + app_name: "ifsc" + source_repo: "razorpay/ifsc" + - name: go-nogo + depends_on: [gng-readiness] + execution_mode: inline + skills: + - name: go-nogo-gate + config: + require_ci_pass: true + require_review_approval: true + - name: deployment + depends_on: [go-nogo] + execution_mode: inline + skills: + - name: spinnaker-ops-assistant + config: + spinnaker_app: "prod-mum-rspl-ifsc" + repo: "razorpay/ifsc" From 6034e6d61be4345194976cfc73653428af82d236 Mon Sep 17 00:00:00 2001 From: NehalramsuryaB <101209829+NehalramsuryaB@users.noreply.github.com> Date: Tue, 28 Apr 2026 16:56:03 +0530 Subject: [PATCH 2/3] feat: populate infra discovery details in take-it-live.yaml Co-Authored-By: Claude Opus 4.6 (1M context) --- take-it-live.yaml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/take-it-live.yaml b/take-it-live.yaml index ecfb2221..fcbc16f5 100644 --- a/take-it-live.yaml +++ b/take-it-live.yaml @@ -4,11 +4,12 @@ service: name: ifsc type: single repo: razorpay/ifsc - owner_team: "TBD" - owner_slack: "TBD" + owner_team: "Platform" + owner_slack: "#ifsc" aliases: [] - # special_notes: | - # Add deployment-specific notes here (AWS accounts, namespaces, IAM roles, etc.) + special_notes: | + Namespace: ifsc + Cluster: prod phases: - name: local-development From 381f53f3d0369aff4c646da83a82c63dc0e26aee Mon Sep 17 00:00:00 2001 From: NehalramsuryaB <101209829+NehalramsuryaB@users.noreply.github.com> Date: Tue, 26 May 2026 20:02:34 +0530 Subject: [PATCH 3/3] chore(take-it-live): sync with latest skill (region+pipeline_parameters, multi-region templates) --- take-it-live.yaml | 187 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 187 insertions(+) diff --git a/take-it-live.yaml b/take-it-live.yaml index fcbc16f5..01898946 100644 --- a/take-it-live.yaml +++ b/take-it-live.yaml @@ -59,3 +59,190 @@ phases: config: spinnaker_app: "prod-mum-rspl-ifsc" repo: "razorpay/ifsc" + region: mumbai-rspl + pipeline_parameters: + deployment_process: regular + + # --------------------------------------------------------------------------- + # MULTI-REGION TEMPLATES (commented — uncomment when expanding to SG/US) + # Mumbai (IN) is the primary region above. SG and US deploy independently: + # - infra-setup phases for SG/US run in parallel with in-prod-infra-setup + # - deployment phases for SG/US are sequential after their own infra-setup + # - Each region's deployment can proceed independently (no cross-region gating) + # --------------------------------------------------------------------------- + + # - name: sg-prod-infra-setup + # description: "Provision SG production infrastructure: Helm values, Spinnaker pipelines" + # depends_on: [integration-testing] + # when: + # type: auto-detect + # checks: + # - type: file-missing + # repo: kube-manifests + # path: "singapore/ifsc/values.yaml" + # branch: singapore_release + # - type: file-missing + # repo: spinacode + # path: "v3/ifsc/prod-sg/" + # condition: any_true + # description: "SG production infrastructure not fully provisioned yet" + # stages: + # - name: sg-prod-helm-values + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: pr_url + # type: string + # skills: + # - name: helm-chart-generator + # config: + # environment: prod + # region: ap-southeast-1 + # - name: pr-shepherd + # config: + # repo: razorpay/kube-manifests + # pre_merge: + # required_approvals: 1 + # halt_after: pre_merge + # - name: create-sg-spinnaker-pipelines + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: pr_url + # type: string + # skills: + # - name: spinnaker-ops-assistant + # config: + # action: generate-v3-pipelines + # app_name: "ifsc" + # repo: "${service.repo}" + # region: ap-southeast-1 + # pipeline_type: standard + # - name: pr-shepherd + # config: + # repo: razorpay/spinacode + # pre_merge: + # required_approvals: 1 + # halt_after: pre_merge + + # - name: sg-prod-deployment + # description: "Deploy to SG production via Spinnaker and verify" + # depends_on: [sg-prod-infra-setup] + # when: + # type: always + # stages: + # - name: sg-gng-readiness + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: status + # type: enum + # values: [GO, NO_GO, CONDITIONAL_GO] + # skills: + # - name: gng-readiness + # config: + # app_name: "ifsc" + # source_repo: "${service.repo}" + # region: ap-southeast-1 + # - name: sg-deployment + # depends_on: [sg-gng-readiness] + # execution_mode: inline + # skills: + # - name: spinnaker-ops-assistant + # config: + # spinnaker_app: "prod-sg-rspl-ifsc" + # repo: "${service.repo}" + # region: singapore-rspl + # pipeline_parameters: + # deployment_process: regular + + # - name: us-prod-infra-setup + # description: "Provision US production infrastructure: Helm values, Spinnaker pipelines" + # depends_on: [integration-testing] + # when: + # type: auto-detect + # checks: + # - type: file-missing + # repo: kube-manifests + # path: "us/ifsc/values.yaml" + # branch: us_release + # - type: file-missing + # repo: spinacode + # path: "v3/ifsc/prod-us/" + # condition: any_true + # description: "US production infrastructure not fully provisioned yet" + # stages: + # - name: us-prod-helm-values + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: pr_url + # type: string + # skills: + # - name: helm-chart-generator + # config: + # environment: prod + # region: us-east-2 + # - name: pr-shepherd + # config: + # repo: razorpay/kube-manifests + # pre_merge: + # required_approvals: 1 + # halt_after: pre_merge + # - name: create-us-spinnaker-pipelines + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: pr_url + # type: string + # skills: + # - name: spinnaker-ops-assistant + # config: + # action: generate-v3-pipelines + # app_name: "ifsc" + # repo: "${service.repo}" + # region: us-east-2 + # pipeline_type: standard + # - name: pr-shepherd + # config: + # repo: razorpay/spinacode + # pre_merge: + # required_approvals: 1 + # halt_after: pre_merge + + # - name: us-prod-deployment + # description: "Deploy to US production via Spinnaker and verify" + # depends_on: [us-prod-infra-setup] + # when: + # type: always + # stages: + # - name: us-gng-readiness + # depends_on: [] + # execution_mode: sub-agent + # output_contract: + # required: + # - name: status + # type: enum + # values: [GO, NO_GO, CONDITIONAL_GO] + # skills: + # - name: gng-readiness + # config: + # app_name: "ifsc" + # source_repo: "${service.repo}" + # region: us-east-2 + # - name: us-deployment + # depends_on: [us-gng-readiness] + # execution_mode: inline + # skills: + # - name: spinnaker-ops-assistant + # config: + # spinnaker_app: "prod-us-rspl-ifsc" + # repo: "${service.repo}" + # region: us-rspl + # pipeline_parameters: + # deployment_process: regular