-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wrap execution of components, and execute on master node (master) #572
base: master
Are you sure you want to change the base?
Conversation
the diff is rather big - because of it's intendation ... in reality it's just |
// force this to happen on master - if an agent is needed, the closure has to | ||
// take care about it. The reason for this is the closure to have access to files | ||
// from the component, e.g. jenkinsfile, shell scripts,... | ||
this.steps.node { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh I think I misunderstood you earlier then.
I believe what you are doing here can't be done. DeployOdsComponent#run
needs to be run on an agent node to deploy to external clusters. With your change, you'd go back to master, right?
Also note that running node {}
has weird effects on the workspace it uses. I would avoid using if at all possible.
I would suggest not to make a change like this. I know this means that the whole deploy
phase runs on an agent node then ... and therefore cannot execute a component's Jenkinsfile. This is a big limitation, but so far my understanding is that the AWS quickstarter can hook into the build
phase instead.
TBH, the whole master/agent thing is a mess, and will cause us lots of issues. I don't see too many options going forward. The cleanest thing would probably be to move the switch to an agent into DeployOdsComponent
(at the cost of doing this many times for many components, which is ugly as well).
We'll need to do more thinking around this ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@michaelsauter - the other option would be to move this into execute ods component - and make it as surgical as possible ... to ensure we can run a jenkinsfile / and shell script in the deploy phase
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
right that might work ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
right that might work ...
let me know if you are happi(er) with that approach
d2f16c8
to
b074222
Compare
as we have seen in a couple of occasions (deploy stage :)) - we should "force" wrap the execution of a component on the master node.