diff --git a/lorax-composer/.buildinfo b/lorax-composer/.buildinfo index 2447dcf4..0c9503e4 100644 --- a/lorax-composer/.buildinfo +++ b/lorax-composer/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: d0036b060ae50548427b7f3aa21363e9 +config: 47a43b17a6d818b63830719359188b5e tags: fbb0d17656682115ca4d033fb2f83ba1 diff --git a/lorax-composer/.doctrees/composer.cli.doctree b/lorax-composer/.doctrees/composer.cli.doctree index 77e24c51..aecf724b 100644 Binary files a/lorax-composer/.doctrees/composer.cli.doctree and b/lorax-composer/.doctrees/composer.cli.doctree differ diff --git a/lorax-composer/.doctrees/composer.doctree b/lorax-composer/.doctrees/composer.doctree index 670a404d..a98204ad 100644 Binary files a/lorax-composer/.doctrees/composer.doctree and b/lorax-composer/.doctrees/composer.doctree differ diff --git a/lorax-composer/.doctrees/environment.pickle b/lorax-composer/.doctrees/environment.pickle index a3d916ee..01c8414c 100644 Binary files a/lorax-composer/.doctrees/environment.pickle and b/lorax-composer/.doctrees/environment.pickle differ diff --git a/lorax-composer/.doctrees/lorax-composer.doctree b/lorax-composer/.doctrees/lorax-composer.doctree index 8f64c815..bc65bfbe 100644 Binary files a/lorax-composer/.doctrees/lorax-composer.doctree and b/lorax-composer/.doctrees/lorax-composer.doctree differ diff --git a/lorax-composer/.doctrees/lorax.doctree b/lorax-composer/.doctrees/lorax.doctree index c4730d86..dbc7b16f 100644 Binary files a/lorax-composer/.doctrees/lorax.doctree and b/lorax-composer/.doctrees/lorax.doctree differ diff --git a/lorax-composer/.doctrees/pylorax.api.doctree b/lorax-composer/.doctrees/pylorax.api.doctree index 7e4e3ac0..2ef7e0a6 100644 Binary files a/lorax-composer/.doctrees/pylorax.api.doctree and b/lorax-composer/.doctrees/pylorax.api.doctree differ diff --git a/lorax-composer/.doctrees/pylorax.doctree b/lorax-composer/.doctrees/pylorax.doctree index 7b33f334..b40cd9a1 100644 Binary files a/lorax-composer/.doctrees/pylorax.doctree and b/lorax-composer/.doctrees/pylorax.doctree differ diff --git a/lorax-composer/_modules/composer/cli.html b/lorax-composer/_modules/composer/cli.html index 2540b689..44a7b85e 100644 --- a/lorax-composer/_modules/composer/cli.html +++ b/lorax-composer/_modules/composer/cli.html @@ -8,7 +8,7 @@
-
+#
+# Copyright (C) 2018 Red Hat, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+import logging
+log = logging.getLogger("composer-cli")
+
+import os
+import json
+
+from composer import http_client as client
+from composer.cli.utilities import argify, frozen_toml_filename, toml_filename, handle_api_result
+from composer.cli.utilities import packageNEVRA
+
+[docs]def blueprints_cmd(opts):
+ """Process blueprints commands
+
+ :param opts: Cmdline arguments
+ :type opts: argparse.Namespace
+ :returns: Value to return from sys.exit()
+ :rtype: int
+
+ This dispatches the blueprints commands to a function
+ """
+ cmd_map = {
+ "list": blueprints_list,
+ "show": blueprints_show,
+ "changes": blueprints_changes,
+ "diff": blueprints_diff,
+ "save": blueprints_save,
+ "delete": blueprints_delete,
+ "depsolve": blueprints_depsolve,
+ "push": blueprints_push,
+ "freeze": blueprints_freeze,
+ "tag": blueprints_tag,
+ "undo": blueprints_undo,
+ "workspace": blueprints_workspace
+ }
+ if opts.args[1] not in cmd_map:
+ log.error("Unknown blueprints command: %s", opts.args[1])
+ return 1
+
+ return cmd_map[opts.args[1]](opts.socket, opts.api_version, opts.args[2:], opts.json)
+
+[docs]def blueprints_list(socket_path, api_version, args, show_json=False):
+ """Output the list of available blueprints
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints list
+ """
+ api_route = client.api_url(api_version, "/blueprints/list")
+ result = client.get_url_json(socket_path, api_route)
+ if show_json:
+ print(json.dumps(result, indent=4))
+ return 0
+
+ print("blueprints: " + ", ".join([r for r in result["blueprints"]]))
+
+ return 0
+
+[docs]def blueprints_show(socket_path, api_version, args, show_json=False):
+ """Show the blueprints, in TOML format
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints show <blueprint,...> Display the blueprint in TOML format.
+
+ Multiple blueprints will be separated by \n\n
+ """
+ for blueprint in argify(args):
+ api_route = client.api_url(api_version, "/blueprints/info/%s?format=toml" % blueprint)
+ print(client.get_url_raw(socket_path, api_route) + "\n\n")
+
+ return 0
+
+[docs]def blueprints_changes(socket_path, api_version, args, show_json=False):
+ """Display the changes for each of the blueprints
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints changes <blueprint,...> Display the changes for each blueprint.
+ """
+ api_route = client.api_url(api_version, "/blueprints/changes/%s" % (",".join(argify(args))))
+ result = client.get_url_json(socket_path, api_route)
+ if show_json:
+ print(json.dumps(result, indent=4))
+ return 0
+
+ for blueprint in result["blueprints"]:
+ print(blueprint["name"])
+ for change in blueprint["changes"]:
+ prettyCommitDetails(change)
+
+ return 0
+
+[docs]def prettyCommitDetails(change, indent=4):
+ """Print the blueprint's change in a nice way
+
+ :param change: The individual blueprint change dict
+ :type change: dict
+ :param indent: Number of spaces to indent
+ :type indent: int
+ """
+ def revision():
+ if change["revision"]:
+ return " revision %d" % change["revision"]
+ else:
+ return ""
+
+ print " " * indent + change["timestamp"] + " " + change["commit"] + revision()
+ print " " * indent + change["message"] + "\n"
+
+[docs]def blueprints_diff(socket_path, api_version, args, show_json=False):
+ """Display the differences between 2 versions of a blueprint
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints diff <blueprint-name> Display the differences between 2 versions of a blueprint.
+ <from-commit> Commit hash or NEWEST
+ <to-commit> Commit hash, NEWEST, or WORKSPACE
+ """
+ if len(args) == 0:
+ log.error("blueprints diff is missing the blueprint name, from commit, and to commit")
+ return 1
+ elif len(args) == 1:
+ log.error("blueprints diff is missing the from commit, and the to commit")
+ return 1
+ elif len(args) == 2:
+ log.error("blueprints diff is missing the to commit")
+ return 1
+
+ api_route = client.api_url(api_version, "/blueprints/diff/%s/%s/%s" % (args[0], args[1], args[2]))
+ result = client.get_url_json(socket_path, api_route)
+
+ if show_json:
+ print(json.dumps(result, indent=4))
+ return 0
+
+ for err in result.get("errors", []):
+ log.error(err)
+
+ if result.get("errors", False):
+ return 1
+
+ for diff in result["diff"]:
+ print(prettyDiffEntry(diff))
+
+ return 0
+
+[docs]def prettyDiffEntry(diff):
+ """Generate nice diff entry string.
+
+ :param diff: Difference entry dict
+ :type diff: dict
+ :returns: Nice string
+ """
+ def change(diff):
+ if diff["old"] and diff["new"]:
+ return "Changed"
+ elif diff["new"] and not diff["old"]:
+ return "Added"
+ elif diff["old"] and not diff["new"]:
+ return "Removed"
+ else:
+ return "Unknown"
+
+ def name(diff):
+ if diff["old"]:
+ return diff["old"].keys()[0]
+ elif diff["new"]:
+ return diff["new"].keys()[0]
+ else:
+ return "Unknown"
+
+ def details(diff):
+ if change(diff) == "Changed":
+ if name(diff) == "Description":
+ return '"%s" -> "%s"' % (diff["old"][name(diff)], diff["new"][name(diff)])
+ elif name(diff) == "Version":
+ return "%s -> %s" % (diff["old"][name(diff)], diff["new"][name(diff)])
+ elif name(diff) in ["Module", "Package"]:
+ return "%s %s -> %s" % (diff["old"][name(diff)]["name"], diff["old"][name(diff)]["version"],
+ diff["new"][name(diff)]["version"])
+ else:
+ return "Unknown"
+ elif change(diff) == "Added":
+ if name(diff) in ["Module", "Package"]:
+ return "%s %s" % (diff["new"][name(diff)]["name"], diff["new"][name(diff)]["version"])
+ else:
+ return " ".join([diff["new"][k] for k in diff["new"]])
+ elif change(diff) == "Removed":
+ if name(diff) in ["Module", "Package"]:
+ return "%s %s" % (diff["old"][name(diff)]["name"], diff["old"][name(diff)]["version"])
+ else:
+ return " ".join([diff["old"][k] for k in diff["old"]])
+
+ return change(diff) + " " + name(diff) + " " + details(diff)
+
+[docs]def blueprints_save(socket_path, api_version, args, show_json=False):
+ """Save the blueprint to a TOML file
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints save <blueprint,...> Save the blueprint to a file, <blueprint-name>.toml
+ """
+ for blueprint in argify(args):
+ api_route = client.api_url(api_version, "/blueprints/info/%s?format=toml" % blueprint)
+ blueprint_toml = client.get_url_raw(socket_path, api_route)
+ open(toml_filename(blueprint), "w").write(blueprint_toml)
+
+ return 0
+
+[docs]def blueprints_delete(socket_path, api_version, args, show_json=False):
+ """Delete a blueprint from the server
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ delete <blueprint> Delete a blueprint from the server
+ """
+ api_route = client.api_url(api_version, "/blueprints/delete/%s" % args[0])
+ result = client.delete_url_json(socket_path, api_route)
+
+ return handle_api_result(result, show_json)
+
+[docs]def blueprints_depsolve(socket_path, api_version, args, show_json=False):
+ """Display the packages needed to install the blueprint
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints depsolve <blueprint,...> Display the packages needed to install the blueprint.
+ """
+ api_route = client.api_url(api_version, "/blueprints/depsolve/%s" % (",".join(argify(args))))
+ result = client.get_url_json(socket_path, api_route)
+
+ if show_json:
+ print(json.dumps(result, indent=4))
+ return 0
+
+ for blueprint in result["blueprints"]:
+ if blueprint["blueprint"].get("version", ""):
+ print("blueprint: %s v%s" % (blueprint["blueprint"]["name"], blueprint["blueprint"]["version"]))
+ else:
+ print("blueprint: %s" % (blueprint["blueprint"]["name"]))
+ for dep in blueprint["dependencies"]:
+ print(" " + packageNEVRA(dep))
+
+ return 0
+
+[docs]def blueprints_push(socket_path, api_version, args, show_json=False):
+ """Push a blueprint TOML file to the server, updating the blueprint
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ push <blueprint> Push a blueprint TOML file to the server.
+ """
+ api_route = client.api_url(api_version, "/blueprints/new")
+ rval = 0
+ for blueprint in argify(args):
+ if not os.path.exists(blueprint):
+ log.error("Missing blueprint file: %s", blueprint)
+ continue
+ blueprint_toml = open(blueprint, "r").read()
+
+ result = client.post_url_toml(socket_path, api_route, blueprint_toml)
+ if handle_api_result(result, show_json):
+ rval = 1
+
+ return rval
+
+[docs]def blueprints_freeze(socket_path, api_version, args, show_json=False):
+ """Handle the blueprints freeze commands
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints freeze <blueprint,...> Display the frozen blueprint's modules and packages.
+ blueprints freeze show <blueprint,...> Display the frozen blueprint in TOML format.
+ blueprints freeze save <blueprint,...> Save the frozen blueprint to a file, <blueprint-name>.frozen.toml.
+ """
+ if args[0] == "show":
+ return blueprints_freeze_show(socket_path, api_version, args[1:], show_json)
+ elif args[0] == "save":
+ return blueprints_freeze_save(socket_path, api_version, args[1:], show_json)
+
+ if len(args) == 0:
+ log.error("freeze is missing the blueprint name")
+ return 1
+
+ api_route = client.api_url(api_version, "/blueprints/freeze/%s" % (",".join(argify(args))))
+ result = client.get_url_json(socket_path, api_route)
+
+ if show_json:
+ print(json.dumps(result, indent=4))
+ else:
+ for entry in result["blueprints"]:
+ blueprint = entry["blueprint"]
+ if blueprint.get("version", ""):
+ print("blueprint: %s v%s" % (blueprint["name"], blueprint["version"]))
+ else:
+ print("blueprint: %s" % (blueprint["name"]))
+
+ for m in blueprint["modules"]:
+ print(" %s-%s" % (m["name"], m["version"]))
+
+ for p in blueprint["packages"]:
+ print(" %s-%s" % (p["name"], p["version"]))
+
+ # Print any errors
+ for err in result.get("errors", []):
+ log.error(err)
+
+ # Return a 1 if there are any errors
+ if result.get("errors", []):
+ return 1
+ else:
+ return 0
+
+[docs]def blueprints_freeze_show(socket_path, api_version, args, show_json=False):
+ """Show the frozen blueprint in TOML format
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints freeze show <blueprint,...> Display the frozen blueprint in TOML format.
+ """
+ if len(args) == 0:
+ log.error("freeze show is missing the blueprint name")
+ return 1
+
+ for blueprint in argify(args):
+ api_route = client.api_url(api_version, "/blueprints/freeze/%s?format=toml" % blueprint)
+ print(client.get_url_raw(socket_path, api_route))
+
+ return 0
+
+[docs]def blueprints_freeze_save(socket_path, api_version, args, show_json=False):
+ """Save the frozen blueprint to a TOML file
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints freeze save <blueprint,...> Save the frozen blueprint to a file, <blueprint-name>.frozen.toml.
+ """
+ if len(args) == 0:
+ log.error("freeze save is missing the blueprint name")
+ return 1
+
+ for blueprint in argify(args):
+ api_route = client.api_url(api_version, "/blueprints/freeze/%s?format=toml" % blueprint)
+ blueprint_toml = client.get_url_raw(socket_path, api_route)
+ open(frozen_toml_filename(blueprint), "w").write(blueprint_toml)
+
+ return 0
+
+[docs]def blueprints_tag(socket_path, api_version, args, show_json=False):
+ """Tag the most recent blueprint commit as a release
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints tag <blueprint> Tag the most recent blueprint commit as a release.
+ """
+ api_route = client.api_url(api_version, "/blueprints/tag/%s" % args[0])
+ result = client.post_url(socket_path, api_route, "")
+
+ return handle_api_result(result, show_json)
+
+[docs]def blueprints_undo(socket_path, api_version, args, show_json=False):
+ """Undo changes to a blueprint
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints undo <blueprint> <commit> Undo changes to a blueprint by reverting to the selected commit.
+ """
+ if len(args) == 0:
+ log.error("undo is missing the blueprint name and commit hash")
+ return 1
+ elif len(args) == 1:
+ log.error("undo is missing commit hash")
+ return 1
+
+ api_route = client.api_url(api_version, "/blueprints/undo/%s/%s" % (args[0], args[1]))
+ result = client.post_url(socket_path, api_route, "")
+
+ return handle_api_result(result, show_json)
+
+[docs]def blueprints_workspace(socket_path, api_version, args, show_json=False):
+ """Push the blueprint TOML to the temporary workspace storage
+
+ :param socket_path: Path to the Unix socket to use for API communication
+ :type socket_path: str
+ :param api_version: Version of the API to talk to. eg. "0"
+ :type api_version: str
+ :param args: List of remaining arguments from the cmdline
+ :type args: list of str
+ :param show_json: Set to True to show the JSON output instead of the human readable output
+ :type show_json: bool
+
+ blueprints workspace <blueprint> Push the blueprint TOML to the temporary workspace storage.
+ """
+ api_route = client.api_url(api_version, "/blueprints/workspace")
+ rval = 0
+ for blueprint in argify(args):
+ if not os.path.exists(blueprint):
+ log.error("Missing blueprint file: %s", blueprint)
+ continue
+ blueprint_toml = open(blueprint, "r").read()
+
+ result = client.post_url_toml(socket_path, api_route, blueprint_toml)
+ if show_json:
+ print(json.dumps(result, indent=4))
+
+ for err in result.get("errors", []):
+ log.error(err)
+
+ # Any errors results in returning a 1, but we continue with the rest first
+ if not result.get("status", False):
+ rval = 1
+
+ return rval
+
Display the changes for each of the blueprints
+Parameters: | + | +
---|
blueprints changes <blueprint,...> Display the changes for each blueprint.
+Process blueprints commands
+Parameters: | opts (argparse.Namespace) – Cmdline arguments | +
---|---|
Returns: | Value to return from sys.exit() | +
Return type: | int | +
This dispatches the blueprints commands to a function
+Delete a blueprint from the server
+Parameters: | + | +
---|
delete <blueprint> Delete a blueprint from the server
+Display the packages needed to install the blueprint
+Parameters: | + | +
---|
blueprints depsolve <blueprint,...> Display the packages needed to install the blueprint.
+Display the differences between 2 versions of a blueprint
+Parameters: | + | +
---|
Handle the blueprints freeze commands
+Parameters: | + | +
---|
blueprints freeze <blueprint,...> Display the frozen blueprint’s modules and packages. +blueprints freeze show <blueprint,...> Display the frozen blueprint in TOML format. +blueprints freeze save <blueprint,...> Save the frozen blueprint to a file, <blueprint-name>.frozen.toml.
+Save the frozen blueprint to a TOML file
+Parameters: | + | +
---|
blueprints freeze save <blueprint,...> Save the frozen blueprint to a file, <blueprint-name>.frozen.toml.
+Show the frozen blueprint in TOML format
+Parameters: | + | +
---|
blueprints freeze show <blueprint,...> Display the frozen blueprint in TOML format.
+Output the list of available blueprints
+Parameters: | + | +
---|
blueprints list
+Push a blueprint TOML file to the server, updating the blueprint
+Parameters: | + | +
---|
push <blueprint> Push a blueprint TOML file to the server.
+Save the blueprint to a TOML file
+Parameters: | + | +
---|
blueprints save <blueprint,...> Save the blueprint to a file, <blueprint-name>.toml
+Show the blueprints, in TOML format
+Parameters: | + | +
---|
blueprints show <blueprint,...> Display the blueprint in TOML format.
+Multiple blueprints will be separated by
+Tag the most recent blueprint commit as a release
+Parameters: | + | +
---|
blueprints tag <blueprint> Tag the most recent blueprint commit as a release.
+Undo changes to a blueprint
+Parameters: | + | +
---|
blueprints undo <blueprint> <commit> Undo changes to a blueprint by reverting to the selected commit.
+Push the blueprint TOML to the temporary workspace storage
+Parameters: | + | +
---|
blueprints workspace <blueprint> Push the blueprint TOML to the temporary workspace storage.
+compose details <uuid>
-This returns information about the compose, including the recipe and the dependencies.
+This returns information about the compose, including the blueprint and the dependencies.
Start a new compose using the selected recipe and type
+Start a new compose using the selected blueprint and type
compose start <recipe-name> <compose-type>
+compose start <blueprint-name> <compose-type>
Return information about the supported compose types
Parameters: | - | -
---|
Generate nice diff entry string.
-Parameters: | diff (dict) – Difference entry dict | -
---|---|
Returns: | Nice string | -
Display the changes for each of the recipes
-Parameters: | - | -
---|
recipes changes <recipe,...> Display the changes for each recipe.
-Process recipes commands
-Parameters: | opts (argparse.Namespace) – Cmdline arguments | -
---|---|
Returns: | Value to return from sys.exit() | -
Return type: | int | -
This dispatches the recipes commands to a function
-Delete a recipe from the server
-Parameters: | - | -
---|
delete <recipe> Delete a recipe from the server
-Display the packages needed to install the recipe
-Parameters: | - | -
---|
recipes depsolve <recipe,...> Display the packages needed to install the recipe.
-Display the differences between 2 versions of a recipe
-Parameters: | - | -
---|
Handle the recipes freeze commands
-Parameters: | - | -
---|
recipes freeze <recipe,...> Display the frozen recipe’s modules and packages. -recipes freeze show <recipe,...> Display the frozen recipe in TOML format. -recipes freeze save <recipe,...> Save the frozen recipe to a file, <recipe-name>.frozen.toml.
-Save the frozen recipe to a TOML file
-Parameters: | - | -
---|
recipes freeze save <recipe,...> Save the frozen recipe to a file, <recipe-name>.frozen.toml.
-Show the frozen recipe in TOML format
-Parameters: | - | -
---|
recipes freeze show <recipe,...> Display the frozen recipe in TOML format.
-Output the list of available recipes
-Parameters: | - | -
---|
recipes list
-Push a recipe TOML file to the server, updating the recipe
-Parameters: | - | -
---|
push <recipe> Push a recipe TOML file to the server.
-Save the recipe to a TOML file
-Parameters: | - | -
---|
recipes save <recipe,...> Save the recipe to a file, <recipe-name>.toml
-Show the recipes, in TOML format
-Parameters: | - | -
---|
recipes show <recipe,...> Display the recipe in TOML format.
-Multiple recipes will be separated by
-Tag the most recent recipe commit as a release
-Parameters: | - | -
---|
recipes tag <recipe> Tag the most recent recipe commit as a release.
-Undo changes to a recipe
-Parameters: | - | -
---|
recipes undo <recipe> <commit> Undo changes to a recipe by reverting to the selected commit.
-Convert a recipe name into a filename.toml
+composer.cli.utilities.frozen_toml_filename(blueprint_name)[source]¶ +Convert a blueprint name into a filename.toml
Parameters: | recipe_name (str) – The recipe’s name | +||
---|---|---|---|
Parameters: | blueprint_name (str) – The blueprint’s name | ||
Returns: | The recipe name with ‘ ‘ converted to - and .toml appended | +||
Returns: | The blueprint name with ‘ ‘ converted to - and .toml appended | ||
Return type: | str |
Parameters: | recipe_name (str) – The recipe’s name | +||
---|---|---|---|
Parameters: | blueprint_name (str) – The blueprint’s name | ||
Returns: | The recipe name with ‘ ‘ converted to - and .toml appended | +||
Returns: | The blueprint name with ‘ ‘ converted to - and .toml appended | ||
Return type: | str |
|
-
|
|
-
|
+
The /path/to/recipes/ is where the recipe’s git repo will be created, and -all the recipes created with the /api/v0/recipes/new route will be stored. -If there are recipe .toml files in the top level of the directory they will -be imported into the recipe git storage. +The /path/to/blueprints/ is where the blueprint’s git repo will be created, and +all the blueprints created with the /api/v0/blueprints/new route will be stored. +If there are blueprint .toml files in the top level of the directory they will +be imported into the blueprint git storage. Composing Images¶As of version 19.7.7 lorax-composer can create tar output images. You can use curl to start a compose like this: -curl --unix-socket /run/weldr/api.socket -X POST -H "Content-Type: application/json" -d '{"recipe_name": "http-server", "compose_type": "tar", "branch": "master"}' http:///api/v0/compose
+curl --unix-socket /run/weldr/api.socket -X POST -H "Content-Type: application/json" -d '{"blueprint_name": "http-server", "compose_type": "tar", "branch": "master"}' http:///api/v0/compose
And then monitor it by passing the returned build UUID to /compose/status/<uuid>. Version 19.7.10 adds support for live-iso and partitioned-disk @@ -139,7 +139,7 @@ in ./docs/rhel7-minimal.ks commands, they will be added by the compose process. Make sure the bootloader packages are included in the %packages section at the end of the kickstart, and you will want to leave off the %end so that the compose can append the -list of packages from the recipe. +list of packages from the blueprint.The new _MAP entry should be a copy of one of the existing entries, but with make_disk set to True. Make sure that none of the other make_* options are True. The image_name is what the name of the final image will be. @@ -215,7 +215,7 @@ the contents of the iso as well as the boot.iso itself.
| composer.cli | + |
+ | + composer.cli.blueprints | + | |
@@ -87,11 +92,6 @@ | composer.cli.projects | ||
- | - composer.cli.recipes | - | |
@@ -280,7 +280,7 @@
|
Return the dependencies and installed size for a list of projects
+Parameters: |
|
+
---|---|
Returns: | installed size and a list of NEVRA’s of the project and its dependencies + |
+
Return type: | tuple of (int, list of dicts) + |
+
The following details are included in the dict:
@@ -548,8 +601,9 @@ Use queue_status() for those.Return the filename and full path of the build’s image file
+Parameters: | uuid (str) – The UUID of the build | +
---|---|
Returns: | The image filename and full path | +
Return type: | tuple of strings | +
Raises : | RuntimeError if there was a problem (eg. invalid uuid, missing config file) | +
Error response:
-{
- "error": {
- "msg": "ggit-error: Failed to remove entry. File isn't in the tree - jboss.toml (-1)"
- },
- "status": false
-}
-
{
+ "errors": ["ggit-error: Failed to remove entry. File isn't in the tree - jboss.toml (-1)"]
+ "status": false
+}
All of the recipes routes support the optional branch argument. If it is not -used then the API will use the master branch for recipes. If you want to create +
All of the blueprints routes support the optional branch argument. If it is not +used then the API will use the master branch for blueprints. If you want to create a new branch use the new or workspace routes with ?branch=<branch-name> to -store the new recipe on the new branch.
---Return a test string. It is not JSON encoded.
--Return the status of the API Server:
---{ "api": "0", - "build": "devel", - "db_supported": false, - "db_version": "0", - "schema_version": "0" } -
-List the available recipes:
+-List the available blueprints:
{ "limit": 20, "offset": 0, - "recipes": [ + "blueprints": [ "atlas", "development", "glusterfs", @@ -1927,13 +1980,13 @@ store the new recipe on the new branch.-/api/v0/recipes/info/<recipe_names>¶
++/api/v0/blueprints/info/<blueprint_names>¶
-Return the JSON representation of the recipe. This includes 3 top level +
-Return the JSON representation of the blueprint. This includes 3 top level objects. changes which lists whether or not the workspace is different from -the most recent commit. recipes which lists the JSON representation of the -recipe, and errors which will list any errors, like non-existant recipes.
+the most recent commit. blueprints which lists the JSON representation of the +blueprint, and errors which will list any errors, like non-existant blueprints.Example:
{ "changes": [ @@ -1943,7 +1996,7 @@ recipe, and errors which will list any errors, like non-existant re } ], "errors": [], - "recipes": [ + "blueprints": [ { "description": "An example GlusterFS server with samba", "modules": [ @@ -1974,68 +2027,62 @@ recipe, and errors which will list any errors, like non-existant reError example:
-+{ - "changes": [], - "errors": [ - { - "msg": "ggit-error: the path 'missing.toml' does not exist in the given tree (-3)", - "recipe": "missing" - } - ], - "recipes": [] -} -{ + "changes": [], + "errors": ["ggit-error: the path 'missing.toml' does not exist in the given tree (-3)"] + "blueprints": [] +}-/api/v0/recipes/changes/<recipe_names>[?offset=0&limit=20]¶
++/api/v0/blueprints/changes/<blueprint_names>[?offset=0&limit=20]¶
-Return the commits to a recipe. By default it returns the first 20 commits, this +
-Return the commits to a blueprint. By default it returns the first 20 commits, this can be changed by passing offset and/or limit. The response will include the commit hash, summary, timestamp, and optionally the revision number. The commit -hash can be passed to /api/v0/recipes/diff/ to retrieve the exact changes.
+hash can be passed to /api/v0/blueprints/diff/ to retrieve the exact changes.Example:
{ "errors": [], "limit": 20, "offset": 0, - "recipes": [ + "blueprints": [ { "changes": [ { "commit": "e083921a7ed1cf2eec91ad12b9ad1e70ef3470be", - "message": "Recipe glusterfs, version 0.0.6 saved.", + "message": "blueprint glusterfs, version 0.0.6 saved.", "revision": null, "timestamp": "2017-11-23T00:18:13Z" }, { "commit": "cee5f4c20fc33ea4d54bfecf56f4ad41ad15f4f3", - "message": "Recipe glusterfs, version 0.0.5 saved.", + "message": "blueprint glusterfs, version 0.0.5 saved.", "revision": null, "timestamp": "2017-11-11T01:00:28Z" }, { "commit": "29b492f26ed35d80800b536623bafc51e2f0eff2", - "message": "Recipe glusterfs, version 0.0.4 saved.", + "message": "blueprint glusterfs, version 0.0.4 saved.", "revision": null, "timestamp": "2017-11-11T00:28:30Z" }, { "commit": "03374adbf080fe34f5c6c29f2e49cc2b86958bf2", - "message": "Recipe glusterfs, version 0.0.3 saved.", + "message": "blueprint glusterfs, version 0.0.3 saved.", "revision": null, "timestamp": "2017-11-10T23:15:52Z" }, { "commit": "0e08ecbb708675bfabc82952599a1712a843779d", - "message": "Recipe glusterfs, version 0.0.2 saved.", + "message": "blueprint glusterfs, version 0.0.2 saved.", "revision": null, "timestamp": "2017-11-10T23:14:56Z" }, { "commit": "3e11eb87a63d289662cba4b1804a0947a6843379", - "message": "Recipe glusterfs, version 0.0.1 saved.", + "message": "blueprint glusterfs, version 0.0.1 saved.", "revision": null, "timestamp": "2017-11-08T00:02:47Z" } @@ -2049,70 +2096,70 @@ hash can be passed to /api/v0/recipes/diff/ to retrieve the exact c-POST /api/v0/recipes/new¶
++POST /api/v0/blueprints/new¶
--Create a new recipe, or update an existing recipe. This supports both JSON and TOML -for the recipe format. The recipe should be in the body of the request with the +
Create a new blueprint, or update an existing blueprint. This supports both JSON and TOML +for the blueprint format. The blueprint should be in the body of the request with the Content-Type header set to either application/json or text/x-toml.
The response will be a status response with status set to true, or an error response with it set to false and an error message included.
-DELETE /api/v0/recipes/delete/<recipe_name>¶
++DELETE /api/v0/blueprints/delete/<blueprint_name>¶
--Delete a recipe. The recipe is deleted from the branch, and will no longer -be listed by the list route. A recipe can be undeleted using the undo route +
Delete a blueprint. The blueprint is deleted from the branch, and will no longer +be listed by the list route. A blueprint can be undeleted using the undo route to revert to a previous commit.
The response will be a status response with status set to true, or an error response with it set to false and an error message included.
-POST /api/v0/recipes/workspace¶
++POST /api/v0/blueprints/workspace¶
--Write a recipe to the temporary workspace. This works exactly the same as new except +
Write a blueprint to the temporary workspace. This works exactly the same as new except that it does not create a commit. JSON and TOML bodies are supported.
-The workspace is meant to be used as a temporary recipe storage for clients. +
The workspace is meant to be used as a temporary blueprint storage for clients. It will be read by the info and diff routes if it is different from the most recent commit.
The response will be a status response with status set to true, or an error response with it set to false and an error message included.
-DELETE /api/v0/recipes/workspace/<recipe_name>¶
++DELETE /api/v0/blueprints/workspace/<blueprint_name>¶
--Remove the temporary workspace copy of a recipe. The info route will now -return the most recent commit of the recipe. Any changes that were in the +
Remove the temporary workspace copy of a blueprint. The info route will now +return the most recent commit of the blueprint. Any changes that were in the workspace will be lost.
The response will be a status response with status set to true, or an error response with it set to false and an error message included.
-POST /api/v0/recipes/undo/<recipe_name>/<commit>¶
++POST /api/v0/blueprints/undo/<blueprint_name>/<commit>¶
--This will revert the recipe to a previous commit. The commit hash from the changes +
This will revert the blueprint to a previous commit. The commit hash from the changes route can be used in this request.
The response will be a status response with status set to true, or an error response with it set to false and an error message included.
-POST /api/v0/recipes/tag/<recipe_name>¶
++POST /api/v0/blueprints/tag/<blueprint_name>¶
--Tag a recipe as a new release. This uses git tags with a special format. -refs/tags/<branch>/<filename>/r<revision>. Only the most recent recipe commit +
Tag a blueprint as a new release. This uses git tags with a special format. +refs/tags/<branch>/<filename>/r<revision>. Only the most recent blueprint commit can be tagged. Revisions start at 1 and increment for each new tag -(per-recipe). If the commit has already been tagged it will return false.
+(per-blueprint). If the commit has already been tagged it will return false.The response will be a status response with status set to true, or an error response with it set to false and an error message included.
--/api/v0/recipes/diff/<recipe_name>/<from_commit>/<to_commit>¶
++/api/v0/blueprints/diff/<blueprint_name>/<from_commit>/<to_commit>¶
Return the differences between two commits, or the workspace. The commit hash from the changes response can be used here, or several special strings:
@@ -2120,13 +2167,13 @@ from the changes response can be used here, or several special stri- NEWEST will select the newest git commit. This works for from_commit or to_commit
- WORKSPACE will select the workspace copy. This can only be used in to_commit
-eg. /api/v0/recipes/diff/glusterfs/NEWEST/WORKSPACE will return the differences +
eg. /api/v0/blueprints/diff/glusterfs/NEWEST/WORKSPACE will return the differences between the most recent git commit and the contents of the workspace.
-Each entry in the response’s diff object contains the old recipe value and the new one. +
Each entry in the response’s diff object contains the old blueprint value and the new one. If old is null and new is set, then it was added. If new is null and old is set, then it was removed. If both are set, then it was changed.
-The old/new entries will have the name of the recipe field that was changed. This +
The old/new entries will have the name of the blueprint field that was changed. This can be one of: Name, Description, Version, Module, or Package. The contents for these will be the old/new values for them.
In the example below the version was changed and the ping package was added.
@@ -2156,17 +2203,17 @@ The contents for these will be the old/new values for them.-/api/v0/recipes/freeze/<recipe_names>¶
++/api/v0/blueprints/freeze/<blueprint_names>¶
-Return a JSON representation of the recipe with the package and module versions set -to the exact versions chosen by depsolving the recipe.
+-Return a JSON representation of the blueprint with the package and module versions set +to the exact versions chosen by depsolving the blueprint.
Example:
{ "errors": [], - "recipes": [ + "blueprints": [ { - "recipe": { + "blueprint": { "description": "An example GlusterFS server with samba", "modules": [ { @@ -2198,17 +2245,17 @@ to the exact versions chosen by depsolving the recipe.-/api/v0/recipes/depsolve/<recipe_names>¶
++/api/v0/blueprints/depsolve/<blueprint_names>¶
-Depsolve the recipe using yum, return the recipe used, and the NEVRAs of the packages -chosen to satisfy the recipe’s requirements. The response will include a list of results, -with the full dependency list in dependencies, the NEVRAs for the recipe’s direct modules +
Depsolve the blueprint using yum, return the blueprint used, and the NEVRAs of the packages +chosen to satisfy the blueprint’s requirements. The response will include a list of results, +with the full dependency list in dependencies, the NEVRAs for the blueprint’s direct modules and packages in modules, and any error will be in errors.
Example:
{ "errors": [], - "recipes": [ + "blueprints": [ { "dependencies": [ { @@ -2258,7 +2305,7 @@ and packages in modules, and any error will be in errors-Start a compose. The content type should be ‘application/json’ and the body of the POST should look like this:
-{ - "recipe_name": "http-server", + "blueprint_name": "http-server", "compose_type": "tar", "branch": "master" }Pass it the name of the recipe, the type of output (from ‘/api/v0/compose/types’), and the -recipe branch to use. ‘branch’ is optional and will default to master. It will create a new +
Pass it the name of the blueprint, the type of output (from ‘/api/v0/compose/types’), and the +blueprint branch to use. ‘branch’ is optional and will default to master. It will create a new build and add it to the queue. It returns the build uuid and a status if it succeeds:
{ "build_id": "e6fa6db4-9c81-4b70-870f-a697ca405cdf", @@ -2520,14 +2567,14 @@ and the build that is running. "new": [ { "id": "45502a6d-06e8-48a5-a215-2b4174b3614b", - "recipe": "glusterfs", + "blueprint": "glusterfs", "queue_status": "WAITING", "timestamp": 1517362647.4570868, "version": "0.0.6" }, { "id": "6d292bd0-bec7-4825-8d7d-41ef9c3e4b73", - "recipe": "kubernetes", + "blueprint": "kubernetes", "queue_status": "WAITING", "timestamp": 1517362659.0034983, "version": "0.0.1" @@ -2536,7 +2583,7 @@ and the build that is running. "run": [ { "id": "745712b2-96db-44c0-8014-fe925c35e795", - "recipe": "glusterfs", + "blueprint": "glusterfs", "queue_status": "RUNNING", "timestamp": 1517362633.7965999, "version": "0.0.6" @@ -2556,14 +2603,14 @@ and the build that is running. "finished": [ { "id": "70b84195-9817-4b8a-af92-45e380f39894", - "recipe": "glusterfs", + "blueprint": "glusterfs", "queue_status": "FINISHED", "timestamp": 1517351003.8210032, "version": "0.0.6" }, { "id": "e695affd-397f-4af9-9022-add2636e7459", - "recipe": "glusterfs", + "blueprint": "glusterfs", "queue_status": "FINISHED", "timestamp": 1517362289.7193348, "version": "0.0.6" @@ -2583,7 +2630,7 @@ and the build that is running. "failed": [ { "id": "8c8435ef-d6bd-4c68-9bf1-a2ef832e6b1a", - "recipe": "http-server", + "blueprint": "http-server", "queue_status": "FAILED", "timestamp": 1517523249.9301329, "version": "0.0.2" @@ -2603,14 +2650,14 @@ and the build that is running. "uuids": [ { "id": "8c8435ef-d6bd-4c68-9bf1-a2ef832e6b1a", - "recipe": "http-server", + "blueprint": "http-server", "queue_status": "FINISHED", "timestamp": 1517523644.2384307, "version": "0.0.2" }, { "id": "45502a6d-06e8-48a5-a215-2b4174b3614b", - "recipe": "glusterfs", + "blueprint": "glusterfs", "queue_status": "FINISHED", "timestamp": 1517363442.188399, "version": "0.0.6" @@ -2621,8 +2668,8 @@ and the build that is running.-DELETE /api/v0/recipes/cancel/<uuid>¶
++@@ -94,7 +94,7 @@DELETE /api/v0/blueprints/cancel/<uuid>¶
diff --git a/lorax-composer/search.html b/lorax-composer/search.html index 73cdf6ef..258c390a 100644 --- a/lorax-composer/search.html +++ b/lorax-composer/search.html @@ -8,7 +8,7 @@ -Cancel the build, if it is not finished, and delete the results. It will return a status of True if it is successful.
@@ -2662,8 +2709,8 @@ contain the following information:@@ -116,27 +116,27 @@
- id - The uuid of the comoposition
- config - containing the configuration settings used to run Anaconda
-- recipe - The depsolved recipe used to generate the kickstart
-- commit - The (local) git commit hash for the recipe used
+- blueprint - The depsolved blueprint used to generate the kickstart
+- commit - The (local) git commit hash for the blueprint used
- deps - The NEVRA of all of the dependencies used in the composition
- compose_type - The type of output generated (tar, iso, etc.)
- queue_status - The final status of the composition (FINISHED or FAILED)
@@ -2694,7 +2741,7 @@ contain the following information: }, "id": "c30b7d80-523b-4a23-ad52-61b799739ce8", "queue_status": "FINISHED", - "recipe": { + "blueprint": { "description": "An example kubernetes master", ... } @@ -2944,20 +2991,18 @@ a line boundry.- v0 Module
- Status Responses
- API Routes
-
diff --git a/lorax-composer/pylorax.html b/lorax-composer/pylorax.html index c30c71b7..c88e3b4a 100644 --- a/lorax-composer/pylorax.html +++ b/lorax-composer/pylorax.html @@ -8,7 +8,7 @@ -- /api/v0/test
-- /api/v0/status
-- /api/v0/recipes/list
-- /api/v0/recipes/info/<recipe_names>
-- /api/v0/recipes/changes/<recipe_names>[?offset=0&limit=20]
-- POST /api/v0/recipes/new
-- DELETE /api/v0/recipes/delete/<recipe_name>
-- POST /api/v0/recipes/workspace
-- DELETE /api/v0/recipes/workspace/<recipe_name>
-- POST /api/v0/recipes/undo/<recipe_name>/<commit>
-- POST /api/v0/recipes/tag/<recipe_name>
-- /api/v0/recipes/diff/<recipe_name>/<from_commit>/<to_commit>
-- /api/v0/recipes/freeze/<recipe_names>
-- /api/v0/recipes/depsolve/<recipe_names>
+- /api/v0/blueprints/list
+- /api/v0/blueprints/info/<blueprint_names>
+- /api/v0/blueprints/changes/<blueprint_names>[?offset=0&limit=20]
+- POST /api/v0/blueprints/new
+- DELETE /api/v0/blueprints/delete/<blueprint_name>
+- POST /api/v0/blueprints/workspace
+- DELETE /api/v0/blueprints/workspace/<blueprint_name>
+- POST /api/v0/blueprints/undo/<blueprint_name>/<commit>
+- POST /api/v0/blueprints/tag/<blueprint_name>
+- /api/v0/blueprints/diff/<blueprint_name>/<from_commit>/<to_commit>
+- /api/v0/blueprints/freeze/<blueprint_names>
+- /api/v0/blueprints/depsolve/<blueprint_names>
- /api/v0/projects/list[?offset=0&limit=20]
- /api/v0/projects/info/<project_names>
- /api/v0/projects/depsolve/<project_names>
@@ -2970,7 +3015,7 @@ a line boundry.- /api/v0/compose/finished
- /api/v0/compose/failed
- /api/v0/compose/status/<uuids>
-- DELETE /api/v0/recipes/cancel/<uuid>
+- DELETE /api/v0/blueprints/cancel/<uuid>
- DELETE /api/v0/compose/delete/<uuids>
- /api/v0/compose/info/<uuid>
- /api/v0/compose/metadata/<uuid>
@@ -3025,7 +3070,7 @@ a line boundry.- previous |
-- Lorax 19.7.11 documentation »
+- Lorax 19.7.14 documentation »
- src »
- pylorax Package »
pylorax Package — Lorax 19.7.11 documentation +pylorax Package — Lorax 19.7.14 documentation @@ -16,7 +16,7 @@ - + @@ -46,7 +46,7 @@- previous |
-- Lorax 19.7.11 documentation »
+- Lorax 19.7.14 documentation »
- src »
- @@ -1477,20 +1477,18 @@ image is built with the filename “${prefix}-${kernel.version}.img”
Bases: object
- -pcritical(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f4f7f21e150>)[source]¶
+pcritical(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f1c44b99150>)[source]¶
- -pdebug(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f4f7f21e150>)[source]¶
+pdebug(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f1c44b99150>)[source]¶
- -perror(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f4f7f21e150>)[source]¶
+perror(msg, fobj=<open file '<stdout>', mode 'w' at 0x7f1c44b99150>)[source]¶- v0 Module
- Status Responses
- API Routes
-
- /api/v0/test
-- /api/v0/status
-- /api/v0/recipes/list
-- /api/v0/recipes/info/<recipe_names>
-- /api/v0/recipes/changes/<recipe_names>[?offset=0&limit=20]
-- POST /api/v0/recipes/new
-- DELETE /api/v0/recipes/delete/<recipe_name>
-- POST /api/v0/recipes/workspace
-- DELETE /api/v0/recipes/workspace/<recipe_name>
-- POST /api/v0/recipes/undo/<recipe_name>/<commit>
-- POST /api/v0/recipes/tag/<recipe_name>
-- /api/v0/recipes/diff/<recipe_name>/<from_commit>/<to_commit>
-- /api/v0/recipes/freeze/<recipe_names>
-- /api/v0/recipes/depsolve/<recipe_names>
+- /api/v0/blueprints/list
+- /api/v0/blueprints/info/<blueprint_names>
+- /api/v0/blueprints/changes/<blueprint_names>[?offset=0&limit=20]
+- POST /api/v0/blueprints/new
+- DELETE /api/v0/blueprints/delete/<blueprint_name>
+- POST /api/v0/blueprints/workspace
+- DELETE /api/v0/blueprints/workspace/<blueprint_name>
+- POST /api/v0/blueprints/undo/<blueprint_name>/<commit>
+- POST /api/v0/blueprints/tag/<blueprint_name>
+- /api/v0/blueprints/diff/<blueprint_name>/<from_commit>/<to_commit>
+- /api/v0/blueprints/freeze/<blueprint_names>
+- /api/v0/blueprints/depsolve/<blueprint_names>
- /api/v0/projects/list[?offset=0&limit=20]
- /api/v0/projects/info/<project_names>
- /api/v0/projects/depsolve/<project_names>
@@ -1503,7 +1501,7 @@ image is built with the filename “${prefix}-${kernel.version}.img”- /api/v0/compose/finished
- /api/v0/compose/failed
- /api/v0/compose/status/<uuids>
-- DELETE /api/v0/recipes/cancel/<uuid>
+- DELETE /api/v0/blueprints/cancel/<uuid>
- DELETE /api/v0/compose/delete/<uuids>
- /api/v0/compose/info/<uuid>
- /api/v0/compose/metadata/<uuid>
@@ -1599,7 +1597,7 @@ image is built with the filename “${prefix}-${kernel.version}.img”- previous |
-- Lorax 19.7.11 documentation »
+- Lorax 19.7.14 documentation »
- src »
Search — Lorax 19.7.11 documentation +Search — Lorax 19.7.14 documentation @@ -16,7 +16,7 @@ - + @@ -43,7 +43,7 @@- modules |
-- Lorax 19.7.11 documentation »
+- Lorax 19.7.14 documentation »
- modules |
-- Lorax 19.7.11 documentation »
+- Lorax 19.7.14 documentation »