11 answers

FAILED Server error, status code: 400, error code: 170003, message: An app was not successfully detected by any available buildpack

Turns out I saw another app that had this issue last week, pushing their app from JazzHub. Looking at your project, you may have the same issue. The problem was that the app is in a subdirectory of the project, instead of at the top level. Jazz is pushing the top level directory, but Bluemix doesn't see anything that it recognizes as an app there. What we ended up doing is adding a line to the top of the deploy script to cd into the app directory before doing the push - I think in your case the line would be

cd BigInsightsSample

Editing the deploy script was done in the Build and Deploy pages of JazzHub.

It appears that IDS thinks the host you are deploying to (the top-level name of the URL) is unique_host_name_without_domain_suffix. Which someone has already used. Host names need to be unique across the domain you are deploying to, which unless you pick a different domain, will be mybluemix.net.

I'm not sure where it's getting this name from. Presumably it's not in your manifest.yml file. I'm wondering if IDS created a new manifest.yml file for you or something?

The initial question was about Build&Deploy feature. It assumes the manifest is in the root. So the shape of the project is not right to run with defaults.

However, you can configure the build to point at manifests in subfolders. See the screenshots.

Regarding the manual deploy from Web IDE. It will deploy from the project root by default. When you select a subfolder with the manifest, you should be able to deploy such subfolder. There seems to be an issue thought. Need to investigate that closer.

Workaround would be to move the manifest from the subfolder to the project's root and add path: name_of_subfolder to it.

I've been looking at your pipeline set up and I noticed a couple of things.

Your working directory on the builder configuration looks good. It should be where the build.xml, manifest.yml, and the files to be compiled are. Keep the working directory as BigInsightsSample.

If you go into the result of one of your builds, you can see the artifacts that were saved. You will noticed that the newly created war and the manifest.yml file are there.

You should not need to "cd" anywhere in your deploy script. The deployer will pull down the artifacts from the build so the manifest.yml will be in the top level where the war is.

I noticed that in some of the logs you have posted that the app is getting created during the deployment. Looking at your manifest.yml file, it does not appear you have a "path" specified. You need this specified so that app knows where the war file is. You can either add the path to the manifest.yml file or add the "-p " option to your deploy script.

@ChristelleScharff I tried deploying the bisample app today and was able to successfully build and deploy the sample application by following the steps exactly as mentioned in the readme file.

When I kept the 'Deployer script' value to the default (instead of 'cf push -p bisample.war' as mentioned in the readme), I was able to recreate the 170003 error described by you. Probably you too were running into the same problem! Could you double check if you had tried removing the default values of 'Deployer Script' field and used 'cf push -p bisample.war', as mentioned in readme.