aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2022-02-09forge: Add webhook service.•••* forge/webhook.scm: New file. Arun Isaac
2022-02-09forge: Return ci-jobs-trigger as G-expression.•••G-expressions are more versatile than file-like objects and compose cleanly under different circumstances. * forge/forge.scm (ci-jobs-trigger-script): Rename to ci-jobs-trigger-gexp and return a G-expression. (forge-activation, forge-service-type): Invoke ci-jobs-trigger-gexp instead of ci-jobs-trigger-script and pass its output to program-file. Arun Isaac
2022-02-09forge: Introduce ci-jobs-trigger field.•••Allow explicitly specifying the CI jobs trigger mechanism. This will enable us to later introduce the webhook trigger mechanism. * forge/forge.scm: Export forge-project-configuration-ci-jobs-trigger. (<forge-project-configuration>)[ci-jobs-trigger]: New field. (forge-activation): Use the ci-jobs-trigger field to decide whether to install the post receive hook. (forge-service-type): Use the ci-jobs-trigger field to decide whether to set up a cron job. Arun Isaac
2022-02-09forge: Rename post-receive-hook to ci-jobs-trigger-script.•••ci-jobs-trigger is a more generic term, and better reflects its use not only as a post-receive hook, but also as a cron job. Later, ci-jobs-trigger will also be used as a webhook command. * forge/forge.scm (post-receive-hook): Rename to ci-jobs-trigger-script. (forge-activation, forge-service-type): Invoke ci-jobs-trigger-script instead of post-receive-hook. Arun Isaac
2022-02-08forge: Provide build-side code to download git repositories.•••* forge/build/git.scm: New file. Arun Isaac
2022-02-08forge: Match only exact matches with group regex.•••Prior to this commit, group regular expressions could match parts of job names. After this commit, they will only match the entire job name. * forge/forge.scm (forge-service-type): Surround regex in a non-capturing group, and ^ and $ for exact matches. Arun Isaac
2022-02-08forge: Support explicit specification of Guix daemon URI.•••* forge/forge.scm: Import (srfi srfi-26). Export forge-configuration-guix-daemon-uri. (<forge-configuration>)[guix-daemon-uri]: New field. (forge-project-configuration-laminar-jobs): Accept forge configuration as argument and pass on guix-daemon-uri to gexp-producer->job-script. (forge-activation, forge-service-type): Pass forge configuration to forge-project-configuration-laminar-jobs. (gexp-producer->job-script): Accept guix-daemon-uri as argument and parameterize store accesses with it. Arun Isaac
2022-02-08forge: Add derivation jobs to be executed by the Guix daemon.•••* forge/forge.scm: Import guile-gcrypt from (gnu packages gnupg), guile-3.0 and guile-zlib from (gnu packages guile), git-minimal from (gnu packages version-control), (guix gexp), (guix modules), (guix packages), and (guix store). Export forge-derivation-job, forge-derivation-job-name, forge-derivation-job-run and forge-derivation-job-after. (<forge-derivation-job>): New type. (forge-project-configuration-laminar-jobs, import-module?, gexp-producer->job-script): New function. (forge-activation, forge-service-type): Call forge-project-configuration-laminar-jobs instead of forge-project-configuration-ci-jobs. Arun Isaac
2022-02-07forge: Add repository branch field to forge-project-configuration.•••* forge/forge.scm (<forge-project-configuration>)[repository-branch]: New field. Export forge-project-configuration-repository-branch. Arun Isaac
2022-01-24forge: Add with-packages.•••with-packages allows for easy creation of G-expressions where a list of specified packages are available. It is to G-expressions what `guix shell' is to the shell. with-packages is frequently used in the definition of CI jobs. * forge/utils.scm: New file. Arun Isaac
2022-01-24forge: Bump copyright year.•••I forgot to bump the copyright year in an earlier commit. * forge/forge.scm: Bump copyright year. Arun Isaac
2022-01-21forge: Ensure laminar configuration directory exists.•••* forge/laminar.scm (forge-laminar-activation): Create laminar configuration directory if it does not exist. Arun Isaac
2022-01-21forge: Make user field of <forge-project-configuration> optional.•••* forge/forge.scm (<forge-project-configuration>)[user]: Set default value to #f. Arun Isaac
2022-01-09forge: Rename guix-laminar-* to forge-laminar-*.•••* forge/laminar.scm: Rename all guix-laminar-* names to forge-laminar-*. * forge/forge.scm (forge-activation, forge-service-type): Replace guix-laminar-job-name with forge-laminar-job-name. (forge-service-type): Replace guix-laminar-service-type with forge-laminar-service-type and guix-laminar-group with forge-laminar-group. Arun Isaac
2022-01-09forge: Import (gnu packages ci).•••(gnu packages ci) is required for the laminar package. * forge/forge.scm: Import (gnu packages ci). Arun Isaac
2022-01-08website: Add website.•••* Makefile, build-aux/build-home-page.el, website/style.css: New files. Arun Isaac
2022-01-08README: Update channel introduction commit.•••The previous commit fixed an error in .guix-authorizations, and thus pushed back the channel introduction commit. * README.org (Installation): Update channel introduction commit. Arun Isaac
2022-01-08guix-authorizations: Parenthesize keys correctly.•••* .guix-authorizations: Surround keys in parentheses. Arun Isaac
2021-12-22README: Add installation instructions.•••* README.org (Installation): New section. Arun Isaac
2021-12-22guix-authorizations: Add arunisaac's key.•••* .guix-authorizations: New file. Arun Isaac
2021-12-21COPYING: Add GPLv3 license.•••* COPYING: New file. Arun Isaac
2021-12-21README: Add README.•••* README.org: New file. Arun Isaac
2021-12-21Initial commitArun Isaac