Skip to content

Commit

Permalink
nixos/wordpress: fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
wegank committed Sep 19, 2024
1 parent d0cbaf4 commit d582ac0
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 5 deletions.
9 changes: 6 additions & 3 deletions nixos/modules/services/web-apps/wordpress.nix
Original file line number Diff line number Diff line change
Expand Up @@ -75,13 +75,16 @@ let

mkPhpValue = v: let
isHasAttr = s: isAttrs v && hasAttr s v;
# "you're escaped" -> "'you\'re escaped'"
# https://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.single
toPhpString = s: "'${escape [ "'" "\\" ] s}'";
in
if isString v then escapeShellArg v
if isString v then toPhpString v
# NOTE: If any value contains a , (comma) this will not get escaped
else if isList v && any lib.strings.isCoercibleToString v then escapeShellArg (concatMapStringsSep "," toString v)
else if isList v && any lib.strings.isCoercibleToString v then toPhpString (concatMapStringsSep "," toString v)
else if isInt v then toString v
else if isBool v then boolToString v
else if isHasAttr "_file" then "trim(file_get_contents(${lib.escapeShellArg v._file}))"
else if isHasAttr "_file" then "trim(file_get_contents(${toPhpString v._file}))"
else if isHasAttr "_raw" then v._raw
else abort "The Wordpress config value ${lib.generators.toPretty {} v} can not be encoded."
;
Expand Down
4 changes: 2 additions & 2 deletions nixos/tests/wordpress.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ rec {
};

nodes = lib.foldl (a: version: let
package = pkgs."wordpress${version}";
package = pkgs."wordpress_${version}";
in a // {
"wp${version}_httpd" = _: {
services.httpd.adminAddr = "[email protected]";
Expand Down Expand Up @@ -67,7 +67,7 @@ rec {
networking.hosts."127.0.0.1" = [ "site1.local" "site2.local" ];
};
}) {} [
"6_3" "6_4"
"6_5" "6_6"
];

testScript = ''
Expand Down

0 comments on commit d582ac0

Please sign in to comment.