Commit 82b59a8f authored by lassulus's avatar lassulus
Browse files

nixos/syncthing: match stale ids by subtracting in jq

parent fdd898f8
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -100,13 +100,13 @@ let
      the Nix configured list of IDs
      */
      + lib.optionalString s.override ''
        old_conf_${conf_type}_ids="$(curl -X GET ${s.baseAddress} | ${jq} --raw-output '.[].${s.GET_IdAttrName}')"
        for id in ''${old_conf_${conf_type}_ids}; do
          if echo ${lib.concatStringsSep " " s.new_conf_IDs} | grep -q $id; then
            continue
          else
        stale_${conf_type}_ids="$(curl -X GET ${s.baseAddress} | ${jq} \
          --argjson new_ids ${lib.escapeShellArg (builtins.toJSON s.new_conf_IDs)} \
          --raw-output \
          '[.[].${s.GET_IdAttrName}] - $new_ids | .[]'
        )"
        for id in ''${stale_${conf_type}_ids}; do
          curl -X DELETE ${s.baseAddress}/$id
          fi
        done
      ''
    ))