< NeonRevision as of 19:53, 29 October 2018 by Sgclark (talk | contribs) (→Admin)(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff) The Neon Git repositories are at http://packaging.neon.kde.org All KDE contributors can commit to Neon/* branches or any branch for repositories under neon/, forks/, neon-packages/ directories, it will reject commits to other branches. They are clones of the repositories used by Debian pkg-kde team http://anonscm.debian.org/cgit/pkg-kde/. Any commits made to a Debian pkg-kde repository will be pulled into Neon Git immediately. Add this to ~/.gitconfig [url "git://anongit.neon.kde.org/"] insteadOf = neon: [url "[email protected]:"] pushInsteadOf = neon: and clone with: git clone neon:kde/khotkeys Contents 1 Anonymous Access 2 Admin 3 Settings up new repositories 4 The Set Up Anonymous Access If you don't have a KDE account you can still clone the repo at git clone git://anongit.neon.kde.org/kde/khotkeys Admin The repository neon:gitolite-admin has gitolite setup, hooks and hook server for those with admin rights (kde sysadmin does). Don't use anongit to check this out, do an explicit git clone [email protected]:gitolite-admin neon-hooks/pre-receive is a hook to check the branch can be committed to debian-hooks/debian-to-neon-post-receive is a hook for Debian pkg-kde Git repos to ping the neon server on updates server/neon-fetch-request-server.py is an XML-RPC server run on the neon server which is called by the Debian hook and fetches updates from the Debian repos into the equivalent branches in our repos maintenance/ scripts sync that all the Debian pkg-kde repos also exist on Neon Git. local/hooks/common/post-receive pings the neon and DCI Jenkins servers to start a new build. It uses gitolite3 on code.kde.org, administrated by the KDE sysadmin team. Web interface is cgit. Should you get a DuplicatedRepos.rsibreak.rsibreak (from DuplicatedRepos.Check) error during job updater you will have to create Neon branches in the neon ( aka neon:extras/coolpackage ) sync of the debian repo and file a request to KDE sysadmin on phabricator to have the duplicate ( aka fork/coolpackage ) deleted. Please ask when unsure. Settings up new repositories To set up a new repository it is nice to make it first on the Debian server so the syncing is already set up and Debian/Kubuntu packagers know to use it. Ask someone with access (Jonathan etc) to ssh git.debian.org; cd /git/pkg-kde/place-to-put-it; ../setup-git-repository <new-repo> The repository should get automatically get picked up by neon infrastructure at most 60 minutes after creation Make a Neon/unstable branch on the neon git repo and get a Jenkins admin to run pangea-tooling jenkins_jobs_update_nci.rb To add a new repo directly to Neon under forks/ neon/ or neon-packaging/ ask an admin (Jonathan, Harald etc) to add it to the gitolite-admin conf/gitolite.conf file. Then check it out directly from the master server, it won't be mirrored to the anongit server, e.g. git clone [email protected]:forks/mustache-d and add a commit to master. If the repo is a fork of debian packaging outside of pkg-kde, then create a mirror of said repo. To set up a mirror: e.g.git clone git.debian.org:/git/collab-maint/gcompris-qt cd gcompris-qt git push --mirror neon:forks/gcompris Then create neon branches as usual. The Set Up neon:gitolite-admin has hooks in .gitolite/hooks/common which are symlinks to neon-hooks/ that get added to new repositories .gitolite/hooks/update is the normal hook from gitolite that does whatever gitolite needs neon-hooks/post-receive pings jenkins to start a new build neon-hooks/pre-receive rejects pushes to non-neon branches and sets up remote to Debian if it exists neon/website and neon/releases.neon.kde.org have a post-receive hook to update their websites (no longer used for websites at least) cron on the gitolite server runs bits to restart the servers and run the check scripts: # Hourly sync of new repositories from git.debian.org @hourly python3 ~/config-sync/gitolite-admin/maintenance/update-gitolite-setup.py # Daily full sync of all repositories from git.debian.org @daily python3 ~/config-sync/gitolite-admin/maintenance/update-gitolite-setup.py --fetch-all-repositories Retrieved from "https://community.kde.org/index.php?title=Neon/Git&oldid=82011" Content is available under Creative Commons License SA 4.0 unless otherwise noted.