Error creating bean with name 'com.atlassian.bamboo.plugins.xcode.testflight.TestFlightTask'

I'm getting this error with the Xcode plugin for bamboo.

I (think) I've set up the project properly, but I can't be 100% sure. I've tried lots of different combinations of settings and still get this error every time the build runs.

Failed to execute the build 'MFI-MFI-JOB1-11'
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'com.atlassian.bamboo.plugins.xcode.testflight.TestFlightTask': Unsatisfied dependency expressed through constructor argument with index 0 of type [com.atlassian.bamboo.logger.ErrorUpdateHandler]: : No unique bean of type [com.atlassian.bamboo.logger.ErrorUpdateHandler] is defined: Unsatisfied dependency of type [interface com.atlassian.bamboo.logger.ErrorUpdateHandler]: expected at least 1 matching bean; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.atlassian.bamboo.logger.ErrorUpdateHandler] is defined: Unsatisfied dependency of type [interface com.atlassian.bamboo.logger.ErrorUpdateHandler]: expected at least 1 matching bean
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:591)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:300)
        at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.atlassian.plugin.osgi.spring.DefaultSpringContainerAccessor.createBean(DefaultSpringContainerAccessor.java:109)
        at com.atlassian.plugin.module.ClassPrefixModuleFactory.createModule(ClassPrefixModuleFactory.java:32)
        at com.atlassian.plugin.module.PrefixDelegatingModuleFactory.createModule(PrefixDelegatingModuleFactory.java:99)
        at com.atlassian.bamboo.plugin.descriptor.AbstractBambooModuleDescriptor.createModule(AbstractBambooModuleDescriptor.java:26)
        at com.atlassian.bamboo.plugin.descriptor.AbstractBambooModuleDescriptor.getModule(AbstractBambooModuleDescriptor.java:90)
        at com.atlassian.bamboo.task.TaskExecutorImpl.executeTasks(TaskExecutorImpl.java:182)
        at com.atlassian.bamboo.task.TaskExecutorImpl.execute(TaskExecutorImpl.java:93)
        at com.atlassian.bamboo.build.pipeline.tasks.ExecuteBuildTask.call(ExecuteBuildTask.java:87)
        at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:206)
        at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:103)
        at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:111)
        at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:52)
        at java.lang.Thread.run(Thread.java:680)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.atlassian.bamboo.logger.ErrorUpdateHandler] is defined: Unsatisfied dependency of type [interface com.atlassian.bamboo.logger.ErrorUpdateHandler]: expected at least 1 matching bean
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:613)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:622)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:584)
        ... 24 more

This is on version 1.8 of the plugin. I used version 2.0 but it didn't work at all. At least with this version of the plugin its working fine for the building stage. Its just pushing to testflight which isn't working at all. :(

Any ideas.

Thanks

4 answers

I'm having the exact same issue right now, with version 2.1 of the plugin running on a Bamboo 5.5, help?

Thank you, trying it now.

I can't figure out what that page is talking about. I cannot find a atlassian-plugin.xml file to edit anywhere. Can you help me at all here? Point me in the right direction?

Oh this is from the XCode plugin? The fix has to be done in the plugin then. You might want to report this error.

Did you get this resolved? I've encountered the exact same error with a brand-new setup.

Hi Ben. No resolution with the plugin unfortunately.

Instead I got rid of the testflight bit and just added a script after the build job which looks like this:

#!/bin/sh

WORKING_DIR=${bamboo.build.working.directory}
IPA_DIR="${WORKING_DIR}/build/YOUR_BUILD_CONFIGURATION-iphoneos"
FILENAME="YOUR_APP_NAME.ipa"

FILE_PATH="${IPA_DIR}/${FILENAME}"

curl https://testflightapp.com/api/builds.json \
    -F file=@"${FILE_PATH}" \
    -F api_token='YOUR_TESTFLIGHT_API_TOKEN' \
    -F team_token='YOUR_TESTFLIGHT_TEAM_TOKEN' \
    -F notes='This build was uploaded by Bamboo via the upload API' \
    -F notify=True \
    -F distribution_lists='YOUR_DISTRIBUTION_LIST'

Hope that helps you out. If you need any more info please get in touch, happy to help you out. Seems that us iOS developers are left out a bit when it comes to continuous integration and stuff. :(

Thanks for the followup! That looks like the best solution at the momment without editing the plugin/config files. I've been rather underwhelemed by Bamboo+XCode plugin in general so far.

Hi guys,

Sorry about the problems that you've been having with this task.

I've provided a patched copy of the addon that should fix the problem. You can download it here.

Drop me a line at james@atlassian.com and let me know how you go.

Thanks

James

Hey James, no need to apologise for a free "beta" plugin. There's bound to be issues and bugs that we'll find. It good to see that you're still supporting the plugin with updates even though its probably not too popular.

Unfortunately your patch is on the 2.0 version of the plugin which exhibits the problems found in this question: https://answers.atlassian.com/questions/170577/ios-xcode-ci-build-is-breaking-not-completing (at least on the version of Bamboo we're running where I work). Which means that we have since downgraded to version 1.8 of the plugin and won't be able to test this new patch. I've been pestering our systems team for an upgrade, so I'll come back to this when we sort that out.

Again, thanks for your help and for patching the plugin.

Tom

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Oct 11, 2018 in Marketplace Apps

You + one app + a desert island...

Hi all! My name is Miles and I work on the Marketplace team. We’re looking for better ways to recommend and suggest apps that are truly crowd favorites, so of course we wanted to poll the Community. ...

3,266 views 6 6
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you