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

kanboard: init at 1.2.42 #357229

Merged
merged 1 commit into from
Dec 9, 2024
Merged

kanboard: init at 1.2.42 #357229

merged 1 commit into from
Dec 9, 2024

Conversation

yzx9
Copy link
Contributor

@yzx9 yzx9 commented Nov 19, 2024

KanBoard is project management software that focuses on the Kanban methodology.

Previously, Kanboard was added but later removed due to its limited utility. This PR reinstates the package and introduces a NixOS module to facilitate hosting the web application.

close #288788

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: documentation This PR adds or changes documentation 8.has: changelog 8.has: module (update) This PR changes an existing module in `nixos/` labels Nov 19, 2024
@yzx9 yzx9 added 8.has: module (new) This PR adds a module in `nixos/` and removed 8.has: module (update) This PR changes an existing module in `nixos/` labels Nov 19, 2024
@github-actions github-actions bot added the 8.has: module (update) This PR changes an existing module in `nixos/` label Nov 19, 2024
@ofborg ofborg bot added 2.status: merge conflict This PR has merge conflicts with the target branch 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by the maintainer of the package it changes 10.rebuild-darwin: 1-10 10.rebuild-darwin: 1 10.rebuild-linux: 1-10 and removed 2.status: merge conflict This PR has merge conflicts with the target branch labels Nov 20, 2024
nixos/doc/manual/release-notes/rl-2505.section.md Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
@yzx9
Copy link
Contributor Author

yzx9 commented Nov 29, 2024

Thanks to @getchoo for the detailed and thoughtful review. I've updated the code according to your suggestions. Please review it again, and feel free to share any further suggestions

@yzx9 yzx9 requested a review from getchoo November 29, 2024 12:14
Copy link
Member

@getchoo getchoo left a comment

Choose a reason for hiding this comment

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

If I have the time I'll try to actually test this module out locally -- but for now, this looks great!

The only other recommendation I would have is creating a VM test for this module, even if it's as simple as pinging the service once it's up. It's a great way to make sure things are working at a basic level, and helps a ton with updating the module and the package itself. Ping me again if you need any help with it :)

pkgs/by-name/ka/kanboard/package.nix Show resolved Hide resolved
@getchoo getchoo added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Nov 30, 2024
@yzx9
Copy link
Contributor Author

yzx9 commented Nov 30, 2024

The test has been added, and some default values have been changed to make the service easier to set up.

@yzx9 yzx9 requested a review from getchoo November 30, 2024 05:28
@github-actions github-actions bot added the 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin label Nov 30, 2024
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/tests/web-apps/kanboard.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ka/kanboard/package.nix Show resolved Hide resolved
@ofborg ofborg bot removed the 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin label Nov 30, 2024
@yzx9 yzx9 force-pushed the feature/kanboard branch from 59890cd to 35d8a2c Compare December 1, 2024 04:14
@ofborg ofborg bot removed the 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin label Dec 1, 2024
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
@yzx9
Copy link
Contributor Author

yzx9 commented Dec 3, 2024

@getchoo I have updated this PR. Please review it again. I’ve pushed a commit to facilitate the review, and I will squash it after approval. I hope I haven't misunderstood you this time.

Copy link
Member

@getchoo getchoo left a comment

Choose a reason for hiding this comment

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

Everything else here looks good! 👍

nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
nixos/modules/services/web-apps/kanboard.nix Outdated Show resolved Hide resolved
@yzx9
Copy link
Contributor Author

yzx9 commented Dec 4, 2024

Thank for you detailed review.

  1. I have changed lib.optionalAttrs to lib.mkIf.
  2. I’ve made the root option force, similar to anuko-time-tracker how handles it,

virtualHosts."${cfg.hostname}" = lib.mkMerge [
cfg.nginx
{
root = lib.mkForce "${package}";
locations = {
"/".index = "index.php";
"~ [^/]\\.php(/|$)" = {
extraConfig = ''
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:${config.services.phpfpm.pools.anuko-time-tracker.socket};
'';
};
};
}
];
};

which resulted in an error:

The option `nodes.machine.services.nginx.virtualHosts.kanboard.root` is defined both null and not null,

Copy link
Member

@getchoo getchoo left a comment

Choose a reason for hiding this comment

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

Module and package LGTM, OfBorg is happy, and the root option of the virtualHost appears to be working as expected with

{
  services.kanboard = {
    enable = true;
    domain = "example.org";
  };
  
  services.nginx.virtualHosts."example.org".root = "/foo/bar";
}

Thanks for all your work here! Feel free to ping me again in a couple days if there are no other reviews :)

@getchoo getchoo added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Dec 5, 2024
@yzx9 yzx9 force-pushed the feature/kanboard branch from fba69f1 to 127d485 Compare December 6, 2024 02:51
@yzx9
Copy link
Contributor Author

yzx9 commented Dec 6, 2024

I have squashed the commits

@wegank wegank removed the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Dec 6, 2024
@yzx9
Copy link
Contributor Author

yzx9 commented Dec 8, 2024

Hello @getchoo, could you take another look at this PR? I haven’t made any changes in the latest squashed commit.

image

Copy link
Member

@getchoo getchoo left a comment

Choose a reason for hiding this comment

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

Thanks again for your work here!

@getchoo getchoo added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Dec 8, 2024
pkgs/by-name/ka/kanboard/package.nix Outdated Show resolved Hide resolved
@getchoo
Copy link
Member

getchoo commented Dec 8, 2024

@ofborg test kanboard

@getchoo
Copy link
Member

getchoo commented Dec 9, 2024

@ofborg build kanboard kanboard.passthru.tests

Hopefully last build 🤞

Copy link
Member

@getchoo getchoo left a comment

Choose a reason for hiding this comment

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

Ok, now we can merge :p

@getchoo getchoo merged commit 53bd25e into NixOS:master Dec 9, 2024
23 of 25 checks passed
@yzx9 yzx9 deleted the feature/kanboard branch December 9, 2024 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: changelog 8.has: documentation This PR adds or changes documentation 8.has: module (new) This PR adds a module in `nixos/` 8.has: module (update) This PR changes an existing module in `nixos/` 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 10.rebuild-linux: 1-10 11.by: package-maintainer This PR was created by the maintainer of the package it changes 12.approvals: 1 This PR was reviewed and approved by one reputable person
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Package request: Kanboard
3 participants