I am trying to do a dedicated assigment between a external agent and a plan/job or whatever, using the bamboo rest api.
I found in the Documentation this.
executorType
should be AGENT or IMAGE
executorId
executor id. Id of agent or elastic image.
assignmentType
should be PROJECT, PLAN, JOB, ENVIRONMENT, DEPLOYMENT_PROJECT
entityId
entity id. Identifier of project, plan, job, deployment project or environment.
I am wondering what entityId really is and where i can find it from eacht Plan, job ..
Its waiting for a long so, jobkey or plankey will not work.
Also on the get
What the heck should entityType be?
The rest api seems to be not very good documented :-(
Any help would be much appriciated.
The only way to get plans, jobs... entityIds is through the agent assignment search API. Still, you first need an agent ID.
Where, in the (2.), the entityType can be: PLAN, JOB..
I also provided some jq queries, you can ignore if you want.
I know, it's crazy and does not make any sense.. : )
ps. For JOBs it will only work if the agent's capacities matches your job requirements!
Hi @phlo_z,
entityID
The entityID is the ID used to identify the project/plan/job in the Bamboo database. That is a design issue that blocks this API to be used only through a sequence of rest APIs.
There are some improvement requests related to this issue already reported:
select title, project_key, project_id from the project;
select title, full_key, build_id from build where build_type='CHAIN';
select title, full_key, build_id from build where build_type='JOB';
There are also internal discussions to change the agent assignment REST endpoint to make it use only project/plan/job keys which would make things a lot easier.
The API will work completely through APIs if you need to assign deployments/environments.
To get the de IDs you need to call:
executorID
Regarding the executorID, you can get it from:
Steps to do the agent assignment
curl -X GET -u <USER>:<PASSWORD> "<BAMBOO_URL>/rest/api/latest/agent"
curl -X GET -u <USER>:<PASSWORD> "<BAMBOO_URL>/rest/api/latest/deploy/project/all"
curl -X POST -u <USER>:<PASSWORD> "<BAMBOO_URL>/rest/api/latest/agent/assignment?executorType=AGENT&executorId=<EXECUTOR_ID>&assignmentType=<ASSIGNMENT_TYPE>&entityId=<ENTITY_ID>"
I hope that helps.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
It is disappointing at the least that the API does not provide the build project id nor is it visible in the UI. Are you aware of any plugins that expose this data?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.