spinnaker: Deck is not showing accounts when create application

Cloud Provider

docker-compose locally

Environment

ubuntu14.04

Feature Area

UI

Description

refer to https://github.com/spinnaker/spinnaker/tree/master/experimental/docker-compose i have put config file but still can’t see accounts in Deck

Steps to Reproduce

image

Additional Details

~# cat compose.env ~# embedded cassandra CASSANDRA_HOST=127.0.0.1 CASSANDRA_EMBEDDED=true REDIS_CONNECTION=redis://redis:6379 SERVER_ADDRESS=0.0.0.0 REDIS_PORT=6379 REDIS_HOST=redis SPRING_CONFIG_LOCATION=/opt/spinnaker/config/

~# cat spinnaker-local.yml 
# This file is intended to override the default configuration in the
# spinnaker.yml file while providing guidance on the mostly likely
# configuration parameters to be changed.
#
# In order for Spinnaker to discover it, it must be copied to a file named
# "spinnaker-local.yml" and placed in /opt/spinnaker/config
# (or when running from source code, in the $HOME/.spinnaker directory.)
#
# A better practice could be to create the spinnaker-local.yml file by
# hand with only the particular attributes that you want to override
# and use the spinnaker.yml file as your guide since it is spinnaker.yml
# that we are overriding here in the first place.

global:
  spinnaker:
    timezone: 'America/Los_Angeles'

providers:
  # See http://www.spinnaker.io/v1.0/docs/target-deployment-setup
  # for general information about configuring spinnaker platform providers.

  # Each of the following providers can be enabled independent of all other
  # providers unless otherwise noted.
  #
  # Each provider can be enabled by setting its 'enabled' attribute to true.
  # As a rule of thumb, each provider defines a 'primaryCredentials' block
  # that configures a default account for Spinnaker to use on that platform.
  # If additional accounts are desired, then add those accounts to a
  # custom clouddriver-local.yml file and consult clouddriver.yml for more
  # information on what to add there.

  aws:
    # For more information on configuring Amazon Web Services (aws), see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-setup#section-amazon-web-services-setup

    enabled: ${SPINNAKER_AWS_ENABLED:false}
    defaultRegion: ${SPINNAKER_AWS_DEFAULT_REGION:us-west-2}
    defaultIAMRole: BaseIAMRole
    primaryCredentials:
      name: my-aws-account
      # Store actual credentials in $HOME/.aws/credentials. See spinnaker.yml
      # for more information, including alternatives.

    # {{name}} will be interpolated with the aws account name (e.g. "my-aws-account-keypair").
    defaultKeyPairTemplate: "{{name}}-keypair"

  azure:
    # For more information on configuring Microsoft Azure (azure), see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-setup#section-azure-cloud-platform-setup

    enabled: ${SPINNAKER_AZURE_ENABLED:false}
    defaultRegion: ${SPINNAKER_AZURE_DEFAULT_REGION:westus}
    primaryCredentials:
      name: my-azure-account

      # To set Azure credentials, enter your Azure supscription values for:
      # clientId, appKey, tenantId, and subscriptionId.
      clientId:
      appKey:
      tenantId:
      subscriptionId:

  google:
    # For more information on configuring Google Cloud Platform (google), see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-setup#section-google-cloud-platform-setup

    enabled: ${SPINNAKER_GOOGLE_ENABLED:false}
    defaultRegion: ${SPINNAKER_GOOGLE_DEFAULT_REGION:us-central1}
    defaultZone: ${SPINNAKER_GOOGLE_DEFAULT_ZONE:us-central1-f}

    primaryCredentials:
      name: my-google-account
      # The project is the Google Project ID for the project to manage with
      # Spinnaker.
      # The jsonPath is a path to the JSON service credentials downloaded
      # from the Google Developer's Console.
      project: ${SPINNAKER_GOOGLE_PROJECT_ID:}
      jsonPath: ${SPINNAKER_GOOGLE_PROJECT_CREDENTIALS_PATH:}
      consul:
        enabled: ${SPINNAKER_GOOGLE_CONSUL_ENABLED:false}

  cf:
    # For more information on configuring Cloud Foundry (cf) support, see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-setup#section-cloud-foundry-platform-setup

    enabled: false
    defaultOrg: spinnaker-cf-org
    defaultSpace: spinnaker-cf-space

    primaryCredentials:
      name: my-cf-account
      api: my-cf-api-uri
      console: my-cf-console-base-url
      # Either uncomment and plugin credentials here, or supply as
      # environment variables for maximum security.
      # account:
      #   name: my-cf-username
      #   password: my-cf-password

  kubernetes:
    # For more information on configuring Kubernetes clusters (kubernetes), see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-setup#section-kubernetes-cluster-setup

    # NOTE: enabling kubernetes also requires enabling dockerRegistry.
    enabled: ${SPINNAKER_KUBERNETES_ENABLED:false}
    primaryCredentials:
      # These credentials use authentication information at ~/.kube/config
      # by default.
      name: my-kubernetes-account
      dockerRegistryAccount: ${providers.dockerRegistry.primaryCredentials.name}

  dockerRegistry:
    # For more information on configuring Docker registries, see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-configuration#section-docker-registry

    # NOTE: Enabling dockerRegistry is independent of other providers.
    # However, for convienience, we tie docker and kubernetes together
    # since kubernetes (and only kubernetes) depends on this docker provider
    # configuration.
    enabled: ${SPINNAKER_KUBERNETES_ENABLED:false}

    primaryCredentials:
      name: my-docker-registry
      address: ${SPINNAKER_DOCKER_REGISTRY:https://index.docker.io/}
      repository: ${SPINNAKER_DOCKER_REPOSITORY:library/nginx}
      username: ${SPINNAKER_DOCKER_USERNAME}
      # A path to a plain text file containing the user's password
      passwordFile: ${SPINNAKER_DOCKER_PASSWORD_FILE}

  openstack:
    # For more information on configuring Openstack clusters, see
    # http://www.spinnaker.io/v1.0/docs/target-deployment-configuration#section-openstack

    enabled: ${SPINNAKER_OPENSTACK_ENABLED:false}
    primaryCredentials:
      name: my-openstack-account
      authUrl: ${OS_AUTH_URL}
      username: ${OS_USERNAME}
      password: ${OS_PASSWORD}
      projectName: ${OS_PROJECT_NAME}

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 23 (1 by maintainers)

Most upvoted comments

resolved offline on slack

I solved above my issue. I delete all spinnaker components (s3, redis, halyard, etc…) and I recreate these, Deck shows my added accounts.

@krmayankk have you resolved your problem? I’ve added a second k8s account but can only see the primary in the dropdown of the deployment stage

i added a new k8s provider and it fails to show up in the UI. It shows in /opt/spinnaker/config/clouddriver.yml and i already ran hal deploy apply anything else i need to do ?

Hi @adrian-gierakowski did you manage to solve this issue?

Yes. Although I don’t remember how exactly as it was long time ago.

The account field is no longer part of the application creation process, so the account field is not part of this modal dialog. Application accounts are inferred by the whatever server groups are deployed into the application.

@balajipothula did you manage to solve this issue?

i think this is a very old issue. Plus it got mixed with newer versions of Spinnaker.

In my case i was deploying Docker image artifacts found in an AWS ECR account.

  • I configured the AWS EC2 and ECS provider with Halyard.
  • I followed this guide on setting up the AWS IAM structure from armory.io
  • Then i created the app in Spinnaker and selected both AWS and AWS ECS accounts
  • I created a simple pipeline to deploy to an already ECS cluster -one stage would obtain the latest docker image from AWS ECR
  • another stage would deploy
  • in Spinnaker > App > Infrastructure > Server groups. I saw my ECS services being populated with tasks automatically.

Of course there is lots more detail in there. But basically the cluster and server groups were populated after i deployed my ECS service. Is like implicit to Spinnaker.

I would have to ask what Spinnaker version are you running? and What scenario are you trying to achieve?

  1. Deploy to AWS EC2
  2. Deploy containers to ECS?
  3. Deploy Kubernetes objects to any cloud provider??
  4. deploy a monolith image to some cloud provider??

Thanks

We are not using Spinnaker now, We want to do Chaos Engineering on AWS Fargate Service, We realize Spinnaker will not fit. So We are developing Our own Python Scripts using Boto3 😃

Ok, I will leave this here incase anyone else runs into it. I managed to solve this issue by checking my hal config file for the kubernetes accounts “context” field.

It appears my primary account was missing the “context” field. I added the context field and the correct context value, then ran hal deploy apply. This solved the problem and all my service accounts are now listed.