A configuration organization tool.
Go to file
Alan Meadows 922083448c Add git and branch revision support to Pegleg CLI
https://review.openstack.org/#/c/582652/ added support for cloning
from repositories using various reference types and allowing checkouts
from already-cloned repositories.

This patch set expands on that behavior to enhance the CLI to allow
for using revisioned repositories rather than relying on pseudo-revision
subfolders. That is, previously Pegleg achieved revision behavior
through subdirectories. With this patch set, Pegleg will treat every
manifests directory it encounters as a proper Git repository, such
that revision support for clones/checkouts is now supported.

Thus, this patch set is backwards incompatible and breaks the previous
behavior of treating every directory as a flat directory from which
revision sub-folders were referenced. Going forward, only repositories
will be supported.

* Remove directory revision support
* Add support for repository definitions within the site-definition:

  repositories:
    global:
      revision: 0.9
      url: ssh://REPO_USERNAME@gerrit:29418/aic-clcp-manifests.git
    secrets:
      revision: master
      url: ssh://REPO_USERNAME@gerrit:29418/aic-clcp-security-manifests.git

where REPO_USERNAME would be replaced with the value from -u and use
the public SSH key supplied with -k.

* Remove primary and aux repository logic and replace with site
  repository and extra repositories
* Allow overriding definitions in the above site-definition on the
  command line: -e global=/mydir@revision
* Move linting into a site action even though more work to be
  done to restrict it to a site

Co-Authored-By: Felipe Monteiro <felipe.monteiro@att.com>
Change-Id: Iaa928ec2f777ed6f899d3b1790f5f9de613da9bb
2018-09-13 14:30:27 -06:00
doc Add git and branch revision support to Pegleg CLI 2018-09-13 14:30:27 -06:00
images/pegleg Update Dockerfile to allow override of FROM variable 2018-07-17 14:37:08 -05:00
site_yamls/site Check that Pegleg only considers YAML 2018-04-10 08:25:36 -05:00
src/bin/pegleg Add git and branch revision support to Pegleg CLI 2018-09-13 14:30:27 -06:00
tools Add ~/.ssh mount to pegleg.sh 2018-09-07 10:31:35 -05:00
.dockerignore Update to UCP layout standard 2018-03-05 07:42:00 -06:00
.gitignore Allow linting policies to be selectable 2018-03-13 08:57:00 -05:00
.gitreview Update .gitreview for openstack infra 2018-05-17 19:52:49 +01:00
.zuul.yaml trivial: Rename docs/ => doc/ in .zuul.yaml 2018-08-23 23:26:35 +01:00
LICENSE Initial commit 2018-01-26 15:47:15 -06:00
Makefile Update Dockerfile to allow override of FROM variable 2018-07-17 14:37:08 -05:00
README.rst Update Pegleg README 2018-08-29 21:42:04 +00:00
tox.ini Add venv tox environment 2018-08-24 21:32:52 +02:00

README.rst

Pegleg

Doc Status

Introduction

Pegleg is a document aggregator that provides early linting and validations via Deckhand, a document management micro-service within Airship.

Pegleg supports local and remote Git repositories. Remote repositories can be cloned using a variety of protocols -- HTTP(S) or SSH. Afterward, specific revisions within those repositories can be checked out, their documents aggregated, linted, and passed to the rest of Airship for orchestration, allowing document authors to manage their site definitions using version control.

Find more documentation for Pegleg on Read the Docs.

Core Responsibilities

  • aggregation - Aggregates all documents required for site deployment across multiple Git repositories, each of which can be used to maintain separate document sets in isolation
  • linting - Configurable linting checks documents for common syntactical and semantical mistakes

Getting Started

For more detailed installation and setup information, please refer to the Getting Started guide.

Integration Points

Pegleg has the following integration points:

  • Deckhand which provides document revision management, storage and rendering functionality upon which the rest of the Airship components rely for orchestration of infrastructure provisioning.

Further Reading

Airship.