Skip to content

Latest commit

 

History

History
97 lines (67 loc) · 3.06 KB

onboarding-project.md

File metadata and controls

97 lines (67 loc) · 3.06 KB

Project Onboarding

Introduction

You will execute this procedure to provision the service project in GCP for applications.

Setup

  1. Move to the folder where the gatekeeper-policies, core-landing-zone and clients folders are located

    cd <FOLDER>
  2. Create the following folder structure for projects

    ├── clients
    │   ├── <client1-name>
    │   ├── <client2-name>
    |   ├── ...
    ├── core-landing-zone
    ├── gatekeeper-policies
    ├── projects
    │   ├── <project1-id>
    │   ├── <project2-id>
    |   ├── ...
    

Add client project package

  1. Get the client project package

!!! Update the command below with the proper VERSION, you can locate it in the package's CHANGELOG.md, for example, '0.0.1'. Use 'main' if not available but we strongly recommend using versions over main. Alternatively, each package CHANGELOG.md contains the history if there is a requirement to use an older version.

  • Experimentation

    PACKAGE="solutions/experimentation/client-project"
    VERSION=$(curl -s $URL | jq -r ".\"$PACKAGE\"")
    PROJECT_ID=project-id
    kpt pkg get https://github.com/GoogleCloudPlatform/pubsec-declarative-toolkit.git/${PACKAGE}@${VERSION} ./projects/${PROJECT_ID}

    Releases List

  • DEV, PREPROD, PROD

    PACKAGE="solutions/client-project-setup"
    VERSION=$(curl -s $URL | jq -r ".\"$PACKAGE\"")
    PROJECT_ID=project-id
    kpt pkg get https://github.com/GoogleCloudPlatform/pubsec-declarative-toolkit.git/${PACKAGE}p@${VERSION} ./projects/${PROJECT_ID}

    Releases List

  1. Customize the setters.yaml file
  • Experimentation

    projects/${PROJECT_ID}/client-project/setters.yaml

  • DEV, PREPROD, PROD

    projects/${PROJECT_ID}/client-project-setup/setters.yaml

    !!! There is a folder in the client-project-setup package called root-sync-git. This folder can be deleted if your are not using a Gitops - Git deployment solution. But, if you are, you should now create a new repository for this project and configure the setters.yaml file accordingly.

  1. Render the Configs
  • Experimentation

    kpt fn render projects/${PROJECT_ID}/client-project
  • DEV, PREPROD, PROD

    kpt fn render projects/${PROJECT_ID}/client-project-setup
  1. Deploy the infrastructure using either kpt or gitops-git or gitops-oci