Spinnaker Clouddriver pod goes to CrashLoopBackOff

2/23/2020

When deploying Spinnaker to EKS via hal deploy apply, Spinnaker Clouddriver pod goes to CrashLoopBackOff with the following error,

Factory method 'awsProvider' threw exception; nested exception is java.lang.NullPointerException: Cannot get property 'name' on null object

My Halyard config is like follows,

currentDeployment: default
deploymentConfigurations:
- name: default
  version: 1.17.6
  providers:
    appengine:
      enabled: false
      accounts: []
    aws:
      enabled: true
      accounts:
      - name: my-account
        requiredGroupMembership: []
        providerVersion: V1
        permissions: {}
        accountId: '010101010101' # my account id here
        regions: []
        assumeRole: Spinnaker-Clouddriver-Role
        lifecycleHooks: []
      primaryAccount: my-account
      bakeryDefaults:
        baseImages: []
      defaultKeyPairTemplate: '{{name}}-keypair'
      defaultRegions:
      - name: us-east-1
      defaults:
        iamRole: BaseIAMRole

My Spinnaker-Clouddriver-Role IAM role has full permissions at the moment. How can I get this resolved?


This is the full log https://gist.github.com/agentmilindu/cfbebffe46b93458df8158f9355e4041

-- Milindu Sanoj Kumarage
amazon-eks
amazon-web-services
kubernetes
spinnaker
spinnaker-halyard

1 Answer

2/24/2020

This is more or less a guess, since you didn't include one iota of version information about your spinnaker setup, but...

According to at com.netflix.spinnaker.clouddriver.aws.provider.agent.ReservationReportCachingAgent$_determineVpcOnlyAccounts_closure2.doCall(ReservationReportCachingAgent.groovy:117) ~[clouddriver-aws.jar:na] in your gist, which corresponds to getAmazonEC2(credentials, credentials.regions[0].name) in version 6.5.2

it appears they do not tolerate having an empty regions: [] like you do; thus:

aws:
  enabled: true
  accounts:
  - name: my-account
    # ... snip ...
    # vvv-- update this list
    regions:
    - name: us-east-1
-- mdaniel
Source: StackOverflow