Skip to content
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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

clemensutschig
Copy link
Member

as we have seen in a couple of occasions (deploy stage :)) - we should "force" wrap the execution of a component on the master node.

@clemensutschig clemensutschig added the enhancement New feature or request label Feb 1, 2021
@clemensutschig
Copy link
Member Author

the diff is rather big - because of it's intendation ... in reality it's just steps.node and the copy of the repo steps.sh (cp ...

// 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 {
Copy link
Member

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 ...

Copy link
Member Author

@clemensutschig clemensutschig Feb 1, 2021

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

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right that might work ...

Copy link
Member Author

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

@clemensutschig clemensutschig force-pushed the feature/execute_on_masternode_ods_master branch from d2f16c8 to b074222 Compare February 1, 2021 15:37
@clemensutschig clemensutschig changed the title WIP: wrap execution of components in master node (master) wrap execution of components, and execute on master node (master) Feb 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants