Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

epic: Deployment Engine (v2) #358

Open
kevinhillinger opened this issue Aug 3, 2023 · 0 comments
Open

epic: Deployment Engine (v2) #358

kevinhillinger opened this issue Aug 3, 2023 · 0 comments
Assignees

Comments

@kevinhillinger
Copy link
Member

kevinhillinger commented Aug 3, 2023

Overview

  • Target Jenkins
  • Docker

Driver

  • Get all deployed resources from the destination Resource Group (instead of knowing in advance how many resources will be deployed, it's a running tally)
    • API call from the UI (new)
  • Convert input parameter Resource Group from Create UI into environment variable in MODM

Jenkins infrastructure

  • Jenkins preconfiguration - as some sort of image or volume
  • Select a non-licensed Docker network for composing docker containers
  • Select a Container Runtime (alternative from Docker runtime)
  • IMPORTANT: Make sure we use a non-licensed version of the JDK for Jenkins (e.g. OpenJDK)

Driver interactions

  • Job creation
  • Job execution with parameters (specific per deployment type)
  • Post Build results collection
    • All build, either pre, during, or post, write a file and have the Driver pick it up using folder watchers

Bootstrapping Jenkins

  • Jenkins health check (ensure Jenkins is up and running)

  • Adding credentials for either Managed Identity or Service Principal to Jenkins via API

    • includes SubscriptionId
  • Unattended Jenkins user creation (user, password, API token)

  • Setup "Global Properties" environment variables in Jenkins:

    • AZURE_RESOURCE_GROUP_NAME
    • AZURE_SUBSCRIPTION_ID
    • AZURE_LOCATION
    • AZURE_TENANT_ID

Configuration

  • The job configurations (config.xml files) will be tokenized
    • Terraform
    • ARM template
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants