Odin
  • Introduction
  • Why Odin?
  • Key Concepts
    • Environment
      • Environment Type
    • Provisioning
      • Provisioning Config for Component Types
    • Component
      • Available Component Types
      • Component Type reference
        • Optimus Components
          • Aerospike [6.3.0.7-1.0.0]
    • Service
      • Know Your Service Definition
    • Versioning
      • Clearing the Confusion: A Simplified Guide to Artifact, Component, and Service Versions
    • Service Sets
    • Labels
  • Reference
    • CLI reference
  • Onboard Your Service
    • Installation
    • Configure
    • Odin -h
    • Getting Started
    • Create Environment
      • Operations on Environment
    • Service Definition
    • Provisioning Config
    • Deploy Service
    • Release Service
    • Optimus Datastore Operations
      • How to use Optimus Datastore in my service?
      • RDS Operations
      • Aerospike Operations
      • Kafka Operations
    • Operating Service & Components
      • Redeploy
        • In Place Deployment
        • Blue Green Deployment
      • Rolling Restart
      • Adding & removing components
      • Revert a deployment for application component
      • Downscaling a Passive Stack
      • Updating the no. of stacks of application component
    • Dev <> QA iteration
    • Frequently Asked Questions
    • Deploy Concrete Service
    • Undeploy Service
    • Delete Environment
    • Appendix
  • How To
    • Define error threshold for canary deployment
    • Add or Remove a component in an already deployed service
    • Integrate mono-repo(cronjobs) with Odin
    • Deploy crontab with Odin
    • Integrate Data pipeline with Odin
    • Push logs to log central
    • Build artifacts for multi module applications
    • Load test with Odin
    • Track Deployments against Commit Ids
    • Deploy Service on Production - Dream11
    • How and when images are created
    • Check logs for deployed infrastructure - Dream11
    • Onboard Stepfunction as a component
    • Onboard Serverless as a component
    • Login to Kubernetes clusters
  • Release Notes
    • 1.2.0-beta.2 - 11 August, 2022
    • Odin October Release
    • Odin 1.2.0 - Nov 9th 2022
    • Odin February Release
Powered by GitBook
On this page
Export as PDF
  1. Onboard Your Service

Service Definition

PreviousOperations on EnvironmentNextProvisioning Config

Last updated 1 year ago

Let's define a . Create a folder service-defintion on Desktop (or any other preferred location) and create a file definition.json with the below content.

service name cannot have _ (underscore) in the name as same is not support by Helm -

{
  "name": "SERVICE_NAME",
  "version": "1.0.0-SNAPSHOT",
  "team": "sdet",
  "components": [
    {
      "type": "application",
      "name": "APPLICATION_NAME",
      "version": "1.0.0-SNAPSHOT",
      "config": {
        "artifact_name": "test",
        "artifact_version": "1.0.0",
        "build_type": "java",
        "build_version": "11"
      }
    },
    {
      "type": "rds",
      "name": "SERVICE_NAME-rds",
      "version": "5.7-1.0.0",
      "config": {
        "binlog": {
          "enable": "false"
        }
      }
    }
  ]
}

Updating a deployed service

odin operate service --operation operationName --name serviceName --env envName --file fileName
//operationName can be add_component or remove_component

Read more

You can add or remove component to a deployed service by running the following command. Refer to for more details:

service
https://helm.sh/docs/chart_best_practices/conventions/#chart-names
Add or Remove a component in an already deployed service
here