smeserver-gitutils/README.md

113 lines
4.5 KiB
Markdown

# <img src="https://www.koozali.org/images/koozali/Logo/Png/Koozali_logo_2016.png" width="25%" vertical="auto" style="vertical-align:bottom"> smeserver-gitutils
Utilities to use with smeserver on Koozali.org GITEA instance
Just a repackaging of some of Brian Read's tools with some modifications for the new git structure and some tidy-up of the ini file and debug statements
## config
sample ~/.smegit/config or /etc/smegit.ini file - fill in your details\
It will use the user config first and system ini, if user config does not exist
## git-cvs2git.sh
copy current cvs version of a package across to git in new structure
git-cvs2git.sh <repository> <organisation> [<local>]
* \<repository\> repository (package) to be migrated (e.g. smeserver-yum)
* \<organisation\> can ONLY be smeserver or smecontribs
optional parameters, can appear in any order
* \<local\> will migrate into your local GITEA (in config), otherwise remote GITEA
* \<debug\> run in debug mode
## git-get-and-build-repo.sh
bring down current git repository and run mockbuild
git-get-and-build.sh <organisation> <repository> [<local> <debug>]
* \<repository\> repository (package) to be built (e.g. smeserver-yum)
* \<organisation\> can be any organisation or user on the remote GITEA instance
optional parameters, can appear in any order
* \<local\> will build from local GITEA (in config), otherwise from remote GITEA
* \<debug\> run in debug mode
## git-migrate-repo.sh
create mirror or copy of src.koozali.org repository in a local GITEA instance
git-migrate-repo.sh <repository> <organisation> [<copy|mirror> <target organisation> <debug>]
* \<repository\> repository (package) to be copied (e.g. smeserver-yum)
* \<organisation\> can be any organisation or user on the remote GITEA instance
* \<debug\> run in debug mode
optional parameters, can appear in any order
* \<copy|mirror\> will create local repo as either a copy or a mirror of the remote repo (default = copy)
* \<target organisation\> within your local GITEA, otherwise local user - must exist already
* \<debug\> run in debug mode
## git-migrate-org.sh
create mirrors of all repos for an organisation in a local GITEA instance
git-migrate-org.sh <organisation> [<copy|mirror> <review> <target organisation> <debug>]
* \<organisation\> can be any organisation or user on the remote GITEA instance
optional parameters, can appear in any order
* \<copy|mirror\> will create local repos as either a copy or a mirror of the remote repos (default = copy)
* \<review\> will just list the repos to be migrated, rather than doing it
* \<target organisation\> within your local GITEA, otherwise local user - must exist already
* \<debug\> run in debug mode
* \<noisy\> show each repo being migrated
## rename-e-smith-pkg.sh
Rename an e-smith package as smeserver and change relevant files
rename-emith-pkg.sh <pkg> [<organisation> <local> <force> <debug>]
* \<pkg\> Module name to be renamed e.g. e-smith-dnscache
optional parameters, can appear in any order
* \<organisation\> (any gitea organisation smeserver, smecontribs or user - defaults to smeserver)
* \<local\> will use parameters set for local repository else it will use remote
* \<force\> will automagically delete an existing repo, otherwise it will prompt
* \<debug\> run in debug mode
This works whether the repo and local files exist of not (it deletes them if necessary)
## parse-list.sh
Parse a list of parameters and execute script with those parameters
parse-list.sh <param file|org='organisation> <script> [<local> <noisy> <additional> <additional> <additional>]
* \<param file\|org='organisation'> name of file containing parameters or organisation which will be used to generate a list of all repos for input to <script>
* \<script\> script to run (e.g. rename-e-smith-pkg.sh)
optional params can appear in any order
* \<local\> used with org= and will use local GITEA instance, default remote - will be passed to <script>
* \<noisy\> show line being executed
* \<additional\> additional params to be passed (up to 3) e.g. debug,force,local
## git-post-create-repo.sh
Update a repo created from a template (contribs,base or 3rd party) with things not able to be updated from the template:
* \<repository\> repository (package) to be editted (e.g. smeserver-yum)
* \<organisation\> can be any organisation or user on the remote or local GITEA instance
optional:
* \<local\> will migrate into your local GITEA (in config), otherwise remote GITEA
Does:
Rename spec file
Set current date in change log
Set Wiki and Issues links external (SME Wiki and Bugzilla)