resources question

14 views
Skip to first unread message

Roy Nielsen

unread,
Jun 19, 2017, 10:06:36 AM6/19/17
to go-cd
Hello,

I'm new to good - maybe this question is clearly answered elsewhere, but a quick search didn't find the answer.

If I were to say a job needs 16 Gb of memory, or 24, or 64 memory available, I could create a tag/resource, right?  What about hard drive, # of CPUs, CPU properties, network capability, operating system, os version, etc, etc.

That starts to be a lot of tags/resources.

Would it be possible to have some json or yaml describe the requirements for a specific job,  Maybe it already is available?  

Is it or could it be possible to have gocd understand an extended set of environmental (HW/OS/compiler availability/etc) conditions when choosing an agent to run jobs on?  Using resources/tags could get complicated fast.

Thank you,
-Roy Nielsen

Roy Nielsen

unread,
Jun 19, 2017, 10:23:10 AM6/19/17
to go...@googlegroups.com
Hello,

I guess what I'm thinking is - would it be possible for an agent to self-identify a bunch of these resources to the server when connecting, or when the server polls for resources?

If you are familiar with puppet - kind of like puppet facts.

Regards,
-Roy


What man is a man who does not make the world better?
- Balien of Ibelin, Kingdom of Heaven


--
You received this message because you are subscribed to a topic in the Google Groups "go-cd" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/go-cd/LToOPUdoXgs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to go-cd+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Ketan Padegaonkar

unread,
Jun 19, 2017, 10:24:40 AM6/19/17
to go...@googlegroups.com
You're probably looking for agent autoregistration.

On Mon, Jun 19, 2017 at 7:53 PM Roy Nielsen <roy.ni...@gmail.com> wrote:
Hello,

I guess what I'm thinking is - would it be possible for an agent to self-identify a bunch of these resources to the server when connecting, or when the server polls for resources?

If you are familiar with puppet - kind of like puppet facts.

Regards,
-Roy


What man is a man who does not make the world better?
- Balien of Ibelin, Kingdom of Heaven


On Mon, Jun 19, 2017 at 8:06 AM, Roy Nielsen <roy.ni...@gmail.com> wrote:
Hello,

I'm new to good - maybe this question is clearly answered elsewhere, but a quick search didn't find the answer.

If I were to say a job needs 16 Gb of memory, or 24, or 64 memory available, I could create a tag/resource, right?  What about hard drive, # of CPUs, CPU properties, network capability, operating system, os version, etc, etc.

That starts to be a lot of tags/resources.

Would it be possible to have some json or yaml describe the requirements for a specific job,  Maybe it already is available?  

Is it or could it be possible to have gocd understand an extended set of environmental (HW/OS/compiler availability/etc) conditions when choosing an agent to run jobs on?  Using resources/tags could get complicated fast.

Thank you,
-Roy Nielsen

--
You received this message because you are subscribed to a topic in the Google Groups "go-cd" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/go-cd/LToOPUdoXgs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to go-cd+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email to go-cd+un...@googlegroups.com.

Roy Nielsen

unread,
Jun 19, 2017, 11:06:12 AM6/19/17
to go...@googlegroups.com
Hello Ketan,

It's close - I was thinking along the lines of an agent keeping an up - to - date table of information specified by a basic  usage (IO/mem/cpu/HD space/SMART status/+) as well as other server defined values (OS/OS version/CPU properties/active mount points/installed compilers/+) that might be better identified dynamically rather than statically.  The code for identifying the data possibly handed to the client, the client updating it's table, and handing back the information for use by server code to see if the client is appropriate for a pipeline/stage/job.  That might be totally out of scope.  

On the other hand, could a plugin do this?

Thank you,
-Roy Nielsen


What man is a man who does not make the world better?
- Balien of Ibelin, Kingdom of Heaven


On Mon, Jun 19, 2017 at 8:24 AM, Ketan Padegaonkar <ketanpad...@gmail.com> wrote:
You're probably looking for agent autoregistration.

On Mon, Jun 19, 2017 at 7:53 PM Roy Nielsen <roy.ni...@gmail.com> wrote:
Hello,

I guess what I'm thinking is - would it be possible for an agent to self-identify a bunch of these resources to the server when connecting, or when the server polls for resources?

If you are familiar with puppet - kind of like puppet facts.

Regards,
-Roy


What man is a man who does not make the world better?
- Balien of Ibelin, Kingdom of Heaven


On Mon, Jun 19, 2017 at 8:06 AM, Roy Nielsen <roy.ni...@gmail.com> wrote:
Hello,

I'm new to good - maybe this question is clearly answered elsewhere, but a quick search didn't find the answer.

If I were to say a job needs 16 Gb of memory, or 24, or 64 memory available, I could create a tag/resource, right?  What about hard drive, # of CPUs, CPU properties, network capability, operating system, os version, etc, etc.

That starts to be a lot of tags/resources.

Would it be possible to have some json or yaml describe the requirements for a specific job,  Maybe it already is available?  

Is it or could it be possible to have gocd understand an extended set of environmental (HW/OS/compiler availability/etc) conditions when choosing an agent to run jobs on?  Using resources/tags could get complicated fast.

Thank you,
-Roy Nielsen

--
You received this message because you are subscribed to a topic in the Google Groups "go-cd" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/go-cd/LToOPUdoXgs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to go-cd+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email to go-cd+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to a topic in the Google Groups "go-cd" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/go-cd/LToOPUdoXgs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to go-cd+unsubscribe@googlegroups.com.

Ketan Padegaonkar

unread,
Jun 19, 2017, 11:20:14 AM6/19/17
to go...@googlegroups.com
On Mon, Jun 19, 2017 at 8:36 PM Roy Nielsen <roy.ni...@gmail.com> wrote:
On the other hand, could a plugin do this?

You probably want to look at elastic agent plugins that can determine agent assignment based on arbitrary rules.

Roy Nielsen

unread,
Jun 19, 2017, 11:22:02 AM6/19/17
to go...@googlegroups.com
Thank you Ketan,

-Roy


What man is a man who does not make the world better?
- Balien of Ibelin, Kingdom of Heaven


Reply all
Reply to author
Forward
0 new messages