Migrate from github to ungleich gitlab
This commit is contained in:
		
					parent
					
						
							
								3ca337dfe0
							
						
					
				
			
			
				commit
				
					
						8b93bf0218
					
				
			
		
					 9 changed files with 112 additions and 78 deletions
				
			
		| 
						 | 
					@ -209,35 +209,30 @@ eof
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        gpg --armor --detach-sign "${archivename}" || exit 1
 | 
					        gpg --armor --detach-sign "${archivename}" || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # make github release
 | 
					        project="ungleich-public%2Fcdist"
 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					        sed_cmd='s/^.*"markdown":"\([^"]*\)".*$/\1/'
 | 
				
			||||||
            --request POST \
 | 
					 | 
				
			||||||
            --data "{ \"tag_name\":\"${tag}\", \
 | 
					 | 
				
			||||||
                      \"target_commitish\":\"master\", \
 | 
					 | 
				
			||||||
                      \"name\": \"${tag}\", \
 | 
					 | 
				
			||||||
                      \"body\":\"${tag}\", \
 | 
					 | 
				
			||||||
                      \"draft\":false, \
 | 
					 | 
				
			||||||
                      \"prerelease\": false}" \
 | 
					 | 
				
			||||||
            "https://api.github.com/repos/ungleich/cdist/releases" || exit 1
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # get release ID
 | 
					        # upload archive
 | 
				
			||||||
        repoid=$(curl "https://api.github.com/repos/ungleich/cdist/releases/tags/${tag}" \
 | 
					        response_archive=$(curl -f -X POST \
 | 
				
			||||||
            | python3 -c 'import json; import sys; print(json.loads(sys.stdin.read())["id"])') \
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					             -F "file=@${archivename}" \
 | 
				
			||||||
 | 
					             "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
 | 
					             | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # upload archive signature
 | 
				
			||||||
 | 
					        response_archive_sig=$(curl -f -X POST \
 | 
				
			||||||
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					             -F "file=@${archivename}.asc" \
 | 
				
			||||||
 | 
					            "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
 | 
					             | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # make release
 | 
				
			||||||
 | 
					        curl -f -X POST \
 | 
				
			||||||
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					             -F "description=Release ${tag}<br/>${response_archive}<br/>${response_archive_sig}" \
 | 
				
			||||||
 | 
					            "https://code.ungleich.ch/api/v4/projects/${project}/repository/tags/${tag}/release" \
 | 
				
			||||||
            || exit 1
 | 
					            || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # upload archive and then signature
 | 
					 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					 | 
				
			||||||
             -H "Accept: application/vnd.github.manifold-preview" \
 | 
					 | 
				
			||||||
             -H "Content-Type: application/x-gtar" \
 | 
					 | 
				
			||||||
             --data-binary @${archivename} \
 | 
					 | 
				
			||||||
            "https://uploads.github.com/repos/ungleich/cdist/releases/${repoid}/assets?name=${archivename}" \
 | 
					 | 
				
			||||||
            || exit 1
 | 
					 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					 | 
				
			||||||
             -H "Accept: application/vnd.github.manifold-preview" \
 | 
					 | 
				
			||||||
             -H "Content-Type: application/pgp-signature" \
 | 
					 | 
				
			||||||
             --data-binary @${archivename}.asc \
 | 
					 | 
				
			||||||
            "https://uploads.github.com/repos/ungleich/cdist/releases/${repoid}/assets?name=${archivename}.asc" \
 | 
					 | 
				
			||||||
            || exit 1
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # remove generated files (archive and asc)
 | 
					        # remove generated files (archive and asc)
 | 
				
			||||||
        if [ $# -eq 2 ]
 | 
					        if [ $# -eq 2 ]
 | 
				
			||||||
| 
						 | 
					@ -314,7 +309,7 @@ eof
 | 
				
			||||||
        "$0" release-git-tag
 | 
					        "$0" release-git-tag
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # sign git tag
 | 
					        # sign git tag
 | 
				
			||||||
        printf "Enter github authentication token: "
 | 
					        printf "Enter upstream repository authentication token: "
 | 
				
			||||||
        read token
 | 
					        read token
 | 
				
			||||||
        "$0" sign-git-release "${target_version}" "${token}"
 | 
					        "$0" sign-git-release "${target_version}" "${token}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -244,34 +244,28 @@ eof
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        gpg --armor --detach-sign "${archivename}" || exit 1
 | 
					        gpg --armor --detach-sign "${archivename}" || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # make github release
 | 
					        project="ungleich-public%2Fcdist"
 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					        sed_cmd='s/^.*"markdown":"\([^"]*\)".*$/\1/'
 | 
				
			||||||
            --request POST \
 | 
					 | 
				
			||||||
            --data "{ \"tag_name\":\"${tag}\", \
 | 
					 | 
				
			||||||
                      \"target_commitish\":\"master\", \
 | 
					 | 
				
			||||||
                      \"name\": \"${tag}\", \
 | 
					 | 
				
			||||||
                      \"body\":\"${tag}\", \
 | 
					 | 
				
			||||||
                      \"draft\":false, \
 | 
					 | 
				
			||||||
                      \"prerelease\": false}" \
 | 
					 | 
				
			||||||
            "https://api.github.com/repos/ungleich/cdist/releases" || exit 1
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # get release ID
 | 
					        # upload archive
 | 
				
			||||||
        repoid=$(curl "https://api.github.com/repos/ungleich/cdist/releases/tags/${tag}" \
 | 
					        response_archive=$(curl -f -X POST \
 | 
				
			||||||
            | python3 -c 'import json; import sys; print(json.loads(sys.stdin.read())["id"])') \
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
            || exit 1
 | 
					             -F "file=@${archivename}" \
 | 
				
			||||||
 | 
					             "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
 | 
					             | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # upload archive and then signature
 | 
					        # upload archive signature
 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					        response_archive_sig=$(curl -f -X POST \
 | 
				
			||||||
             -H "Accept: application/vnd.github.manifold-preview" \
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
             -H "Content-Type: application/x-gtar" \
 | 
					             -F "file=@${archivename}.asc" \
 | 
				
			||||||
             --data-binary @${archivename} \
 | 
					            "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
            "https://uploads.github.com/repos/ungleich/cdist/releases/${repoid}/assets?name=${archivename}" \
 | 
					             | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
            || exit 1
 | 
					
 | 
				
			||||||
        curl -H "Authorization: token ${token}" \
 | 
					        # make release
 | 
				
			||||||
             -H "Accept: application/vnd.github.manifold-preview" \
 | 
					        curl -f -X POST \
 | 
				
			||||||
             -H "Content-Type: application/pgp-signature" \
 | 
					             -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
             --data-binary @${archivename}.asc \
 | 
					             -F "description=Release ${tag}<br/>${response_archive}<br/>${response_archive_sig}" \
 | 
				
			||||||
            "https://uploads.github.com/repos/ungleich/cdist/releases/${repoid}/assets?name=${archivename}.asc" \
 | 
					            "https://code.ungleich.ch/api/v4/projects/${project}/repository/tags/${tag}/release" \
 | 
				
			||||||
            || exit 1
 | 
					            || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # remove generated files (archive and asc)
 | 
					        # remove generated files (archive and asc)
 | 
				
			||||||
| 
						 | 
					@ -349,7 +343,7 @@ eof
 | 
				
			||||||
        "$0" release-git-tag
 | 
					        "$0" release-git-tag
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # sign git tag
 | 
					        # sign git tag
 | 
				
			||||||
        printf "Enter github authentication token: "
 | 
					        printf "Enter upstream repository authentication token: "
 | 
				
			||||||
        read token
 | 
					        read token
 | 
				
			||||||
        "$0" sign-git-release "${target_version}" "${token}"
 | 
					        "$0" sign-git-release "${target_version}" "${token}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -30,7 +30,7 @@ username
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source
 | 
					source
 | 
				
			||||||
    Select the source from which to clone cdist from.
 | 
					    Select the source from which to clone cdist from.
 | 
				
			||||||
    Defaults to "git://github.com/ungleich/cdist.git".
 | 
					    Defaults to "git://code.ungleich.ch/ungleich-public/cdist.git".
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
branch
 | 
					branch
 | 
				
			||||||
| 
						 | 
					@ -47,7 +47,7 @@ EXAMPLES
 | 
				
			||||||
    __cdist /home/cdist/cdist
 | 
					    __cdist /home/cdist/cdist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Use alternative source
 | 
					    # Use alternative source
 | 
				
			||||||
    __cdist --source "git://github.com/ungleich/cdist" /home/cdist/cdist
 | 
					    __cdist --source "git://code.ungleich.ch/ungleich-public/cdist" /home/cdist/cdist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AUTHORS
 | 
					AUTHORS
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1 +1 @@
 | 
				
			||||||
git://github.com/ungleich/cdist.git
 | 
					git://code.ungleich.ch/ungleich-public/cdist.git
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,7 @@ EXAMPLES
 | 
				
			||||||
    __git /home/services/dokuwiki --source git://github.com/splitbrain/dokuwiki.git
 | 
					    __git /home/services/dokuwiki --source git://github.com/splitbrain/dokuwiki.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Checkout cdist, stay on branch 2.1
 | 
					    # Checkout cdist, stay on branch 2.1
 | 
				
			||||||
    __git /home/nico/cdist --source git://github.com/ungleich/cdist.git --branch 2.1
 | 
					    __git /home/nico/cdist --source git://code.ungleich.ch/ungleich-public/cdist.git --branch 2.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AUTHORS
 | 
					AUTHORS
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										50
									
								
								docs/dev/github-gitlab-migration/release
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										50
									
								
								docs/dev/github-gitlab-migration/release
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,50 @@
 | 
				
			||||||
 | 
					#!/bin/sh -e
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set -x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					printf "Enter tag name: "
 | 
				
			||||||
 | 
					read tag
 | 
				
			||||||
 | 
					printf "Enter repository authentication token: "
 | 
				
			||||||
 | 
					read token
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					git tag -d "${tag}" || :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					git tag "${tag}" -m "Release ${tag}"
 | 
				
			||||||
 | 
					git push origin "${tag}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo 'foo' > foo
 | 
				
			||||||
 | 
					echo 'foo signature' > foo.asc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					archivename="foo"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					project="poljakowski%2Fmy-cdist-testing"
 | 
				
			||||||
 | 
					sed_cmd='s/^.*"markdown":"\([^"]*\)".*$/\1/'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# upload archive
 | 
				
			||||||
 | 
					response_archive=$(curl -f -X POST \
 | 
				
			||||||
 | 
					     -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					     -F "file=@${archivename}" \
 | 
				
			||||||
 | 
					     "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
 | 
					     | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# upload archive signature
 | 
				
			||||||
 | 
					response_archive_sig=$(curl -f -X POST \
 | 
				
			||||||
 | 
					     -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					     -F "file=@${archivename}.asc" \
 | 
				
			||||||
 | 
					    "https://code.ungleich.ch/api/v4/projects/${project}/uploads" \
 | 
				
			||||||
 | 
					     | sed "${sed_cmd}") || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# make release
 | 
				
			||||||
 | 
					curl -f -X POST \
 | 
				
			||||||
 | 
					     -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					     -F "description=Release ${tag}<br/>${response_archive}<br/>${response_archive_sig}" \
 | 
				
			||||||
 | 
					    "https://code.ungleich.ch/api/v4/projects/${project}/repository/tags/${tag}/release" \
 | 
				
			||||||
 | 
					    || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# get tag
 | 
				
			||||||
 | 
					curl -f -X GET \
 | 
				
			||||||
 | 
					     -H "PRIVATE-TOKEN: ${token}" \
 | 
				
			||||||
 | 
					    "https://code.ungleich.ch/api/v4/projects/${project}/repository/tags/${tag}" \
 | 
				
			||||||
 | 
					    || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					rm -f foo foo.asc
 | 
				
			||||||
| 
						 | 
					@ -16,7 +16,7 @@ Reporting bugs
 | 
				
			||||||
--------------
 | 
					--------------
 | 
				
			||||||
If you believe you've found a bug and verified that it is
 | 
					If you believe you've found a bug and verified that it is
 | 
				
			||||||
in the latest version, drop a mail to the cdist mailing list,
 | 
					in the latest version, drop a mail to the cdist mailing list,
 | 
				
			||||||
subject prefixed with "[BUG] " or create an issue on github.
 | 
					subject prefixed with "[BUG] " or create an issue on code.ungleich.ch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Coding conventions (everywhere)
 | 
					Coding conventions (everywhere)
 | 
				
			||||||
| 
						 | 
					@ -51,7 +51,7 @@ work nor kill the authors brain:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
As soon as your work meets these requirements, write a mail
 | 
					As soon as your work meets these requirements, write a mail
 | 
				
			||||||
for inclusion to the mailinglist **cdist-configuration-management at googlegroups.com**
 | 
					for inclusion to the mailinglist **cdist-configuration-management at googlegroups.com**
 | 
				
			||||||
or open a pull request at http://github.com/ungleich/cdist.
 | 
					or open a merge request at https://code.ungleich.ch/ungleich-public/cdist.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
How to submit a new type
 | 
					How to submit a new type
 | 
				
			||||||
| 
						 | 
					@ -76,7 +76,7 @@ The following workflow works fine for most developers
 | 
				
			||||||
.. code-block:: sh
 | 
					.. code-block:: sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # get latest upstream master branch
 | 
					    # get latest upstream master branch
 | 
				
			||||||
    git clone https://github.com/ungleich/cdist.git
 | 
					    git clone https://code.ungleich.ch/ungleich-public/cdist.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # update if already existing
 | 
					    # update if already existing
 | 
				
			||||||
    cd cdist; git fetch -v; git merge origin/master
 | 
					    cd cdist; git fetch -v; git merge origin/master
 | 
				
			||||||
| 
						 | 
					@ -88,22 +88,22 @@ The following workflow works fine for most developers
 | 
				
			||||||
    # *hack*
 | 
					    # *hack*
 | 
				
			||||||
    *hack*
 | 
					    *hack*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # clone the cdist repository on github if you haven't done so
 | 
					    # clone the cdist repository on code.ungleich.ch if you haven't done so
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # configure your repo to know about your clone (only once)
 | 
					    # configure your repo to know about your clone (only once)
 | 
				
			||||||
    git remote add github git@github.com:YOURUSERNAME/cdist.git
 | 
					    git remote add ungleich git@code.ungleich.ch:YOURUSERNAME/cdist.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # push the new branch to github 
 | 
					    # push the new branch to ungleich gitlab
 | 
				
			||||||
    git push github documentation_cleanup
 | 
					    git push ungleich documentation_cleanup
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # (or everything)
 | 
					    # (or everything)
 | 
				
			||||||
    git push --mirror github
 | 
					    git push --mirror ungleich
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # create a pull request at github (use a browser)
 | 
					    # create a merge request at ungleich gitlab (use a browser)
 | 
				
			||||||
    # *fixthingsbecausequalityassurancefoundissuesinourpatch*
 | 
					    # *fixthingsbecausequalityassurancefoundissuesinourpatch*
 | 
				
			||||||
    *hack*
 | 
					    *hack*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # push code to github again
 | 
					    # push code to ungleich gitlab again
 | 
				
			||||||
    git push ... # like above
 | 
					    git push ... # like above
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # add comment that everything should be green now (use a browser)
 | 
					    # add comment that everything should be green now (use a browser)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,10 +36,13 @@ To install cdist, execute the following commands:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.. code-block:: sh
 | 
					.. code-block:: sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    git clone https://github.com/ungleich/cdist.git
 | 
					    git clone https://code.ungleich.ch/ungleich-public/cdist.git
 | 
				
			||||||
    cd cdist
 | 
					    cd cdist
 | 
				
			||||||
    export PATH=$PATH:$(pwd -P)/bin
 | 
					    export PATH=$PATH:$(pwd -P)/bin
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					From version 4.2.0 cdist tags and releases are signed.
 | 
				
			||||||
 | 
					You can get GPG public key used for signing `here <_static/pgp-key-EFD2AE4EC36B6901.asc>`_.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
To install cdist with distutils from cloned repository, first you have to
 | 
					To install cdist with distutils from cloned repository, first you have to
 | 
				
			||||||
create version.py:
 | 
					create version.py:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -74,14 +77,6 @@ So for instance if you want to use and stay with version 4.1, you can use
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    git checkout -b 4.1 origin/4.1
 | 
					    git checkout -b 4.1 origin/4.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Git mirrors
 | 
					 | 
				
			||||||
^^^^^^^^^^^
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
If the main site is down, you can acquire cdist from one of the following sites:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 * git://github.com/telmich/cdist.git `github <https://github.com/telmich/cdist>`_
 | 
					 | 
				
			||||||
 * git://git.code.sf.net/p/cdist/code `sourceforge <https://sourceforge.net/p/cdist/code>`_
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Building and using documentation (man and html)
 | 
					Building and using documentation (man and html)
 | 
				
			||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
					^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -56,7 +56,7 @@ code into your shell to get started and configure localhost::
 | 
				
			||||||
    # Get cdist 
 | 
					    # Get cdist 
 | 
				
			||||||
    # Mirrors can be found on
 | 
					    # Mirrors can be found on
 | 
				
			||||||
    # http://www.nico.schottelius.org/software/cdist/install/#index2h4
 | 
					    # http://www.nico.schottelius.org/software/cdist/install/#index2h4
 | 
				
			||||||
    git clone git://github.com/ungleich/cdist
 | 
					    git clone git://code.ungleich.ch/ungleich-public/cdist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Create manifest (maps configuration to host(s)
 | 
					    # Create manifest (maps configuration to host(s)
 | 
				
			||||||
    cd cdist
 | 
					    cd cdist
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue