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

Process spot directive #5923

Open
adamrtalbot opened this issue Mar 26, 2025 · 0 comments
Open

Process spot directive #5923

adamrtalbot opened this issue Mar 26, 2025 · 0 comments

Comments

@adamrtalbot
Copy link
Collaborator

New feature

We have many directives for specific purposes, but not one to control spot behaviour. We frequently have to point specific processes at different queues to use on-demand machines for long running processes. If we had a dedicated spot directive, we could automate this process.

Note, this mainly applies to Google and Azure. For AWS it's trickier but could be managed via Seqera Platform.

Use case

processA <- spot
processB <- on demand
processC <- spot

The current implementation would be this configuration:

process {
    withName: processB {
        queue = "on-demand-queue"
    }
}

but the queue string is brittle and can change without the config reflecting this causing failures.

Suggested implementation

process.spot = true

Then it would use a spot machine if that executor supports it.

Google: Enables google.batch.spot in a process specific manner
Azure: Enables azure.batch.pools.<name>.lowPriority for the autopools feature
AWS: Not technically possible, although Seqera Platform could switch the queue under the hood.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants