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
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