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

Flakes don't appear to be well-supported #18

Open
cole-h opened this issue Nov 9, 2021 · 2 comments
Open

Flakes don't appear to be well-supported #18

cole-h opened this issue Nov 9, 2021 · 2 comments

Comments

@cole-h
Copy link
Member

cole-h commented Nov 9, 2021

14:43:05 postgres.1           | 2021-11-09 14:43:05.147 PST [169780] ERROR:  new row for relation "jobsets" violates check constraint "jobsets_flake_paths_check"
14:43:05 postgres.1           | 2021-11-09 14:43:05.147 PST [169780] DETAIL:  Failing row contains (pr-2, 3, test, Test pr by cole-h: https://github.com/cole-h/hydra-playground/pu..., null, null, null, null, null, null, 1, 0, 0, , 3, 300, 1, null, null, null, 0, git+ssh://[email protected]:cole-h/hydra-playground.git?ref=test-pr...).
14:43:05 postgres.1           | 2021-11-09 14:43:05.147 PST [169780] STATEMENT:  INSERT INTO jobsets ( checkinterval, description, emailoverride, enabled, enableemail, flake, hidden, keepnr, name, project, schedulingshares) VALUES ( $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11 ) RETURNING id
14:43:05 hydra-notify.1       | ERROR: failed to process declarative jobset test:pr-2, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  new row for relation "jobsets" violates check constraint "jobsets_flake_paths_check"
14:43:05 hydra-notify.1       | DETAIL:  Failing row contains (pr-2, 3, test, Test pr by cole-h: https://github.com/cole-h/hydra-playground/pu..., null, null, null, null, null, null, 1, 0, 0, , 3, 300, 1, null, null, null, 0, git+ssh://[email protected]:cole-h/hydra-playground.git?ref=test-pr...). [for Statement "INSERT INTO jobsets ( checkinterval, description, emailoverride, enabled, enableemail, flake, hidden, keepnr, name, project, schedulingshares) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) RETURNING id" with ParamValues: 1='300', 2='Test pr by cole-h: https://github.com/cole-h/hydra-playground/pull/2', 3='', 4='1', 5='0', 6='git+ssh://[email protected]:cole-h/hydra-playground.git?ref=test-pr&rev=c3f4581eeab7525f91d204723d9261ba2e7edfe8', 7='0', 8='3', 9='pr-2', 10='test', 11='1'] at /home/vin/workspace/vcs/hydra/src/lib/Hydra/Helper/AddBuilds.pm line 65
14:43:05 hydra-notify.1       | 
14:43:05 postgres.1           | 2021-11-09 14:43:05.150 PST [169780] ERROR:  current transaction is aborted, commands ignored until end of transaction block
14:43:05 postgres.1           | 2021-11-09 14:43:05.150 PST [169780] STATEMENT:  SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = $1 AND me.project = $2 ) )
14:43:05 hydra-notify.1       | ERROR: failed to process declarative jobset test:pr-4, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='pr-4', 2='test'] at /home/vin/workspace/vcs/hydra/src/lib/Hydra/Helper/AddBuilds.pm line 65
14:43:05 hydra-notify.1       | 
14:43:05 postgres.1           | 2021-11-09 14:43:05.153 PST [169780] ERROR:  current transaction is aborted, commands ignored until end of transaction block
14:43:05 postgres.1           | 2021-11-09 14:43:05.153 PST [169780] STATEMENT:  SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = $1 AND me.project = $2 ) )
14:43:05 hydra-notify.1       | ERROR: failed to process declarative jobset test:pr-3, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='pr-3', 2='test'] at /home/vin/workspace/vcs/hydra/src/lib/Hydra/Helper/AddBuilds.pm line 65
14:43:05 hydra-notify.1       | 

See my naive attempt here: https://github.com/cole-h/hydra-playground/tree/flake

Maybe I was just holding it wrong, though. (Entirely possible, I kinda just cobbled together the configuration and flake without any references.)

At the very least, flake support isn't well-documented.

@cole-h
Copy link
Member Author

cole-h commented Nov 15, 2021

After #17 merges, the only "issue" will be that the generator assumes SSH access to the flake.

@grahamc
Copy link
Member

grahamc commented Dec 3, 2021

The issue at this point is we're generating invalid flakerefs:

We're generating: git+ssh://[email protected]:NixOS/nix?ref=v1.2.3

Nix wants: git+ssh://[email protected]/NixOS/nix?ref=v1.2.3.

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

No branches or pull requests

2 participants