summaryrefslogtreecommitdiff
path: root/infra/dgit-repos-server
Commit message (Collapse)AuthorAge
* dgit-infrastructure: Use --trust-changelog in tag2uploadIan Jackson7 days
| | | | | | And add a version to the Recommends dgit. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (fix): Pass suite in check and use it for HEADIan Jackson2022-12-28
| | | | | | This now produces the same answers as push would. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects protocol: Reintroduce time, handle optionalityIan Jackson2022-12-28
| | | | | | | | | | | | According to the poldb schema, gitobjtype is optional, so make it optional in the protocol too. Reintroduce time, as we're about to need it for calling the common message construction. Clarify what optionality means and implement it properly. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query tainted-objects: Add hint to spec and clientIan Jackson2022-12-28
| | | | | | | | | We're going to want to print a hint. (In this case, the message that would be printed to stderr if we rejected the actual push.) Add it to the spec, and to the client code. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query tainted-objects: Drop time from queryIan Jackson2022-12-28
| | | | | | | This isn't useful right now - we're not displaying it. And we're about to add a pseudo-taint which won't have a sensible time. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query: spec, and for taint check (in dgit-repos-server)Ian Jackson2022-12-27
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Fix wrong un-mangling of epoch and ~ versionsIan Jackson2021-09-08
| | | | | Closes: #987304 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Terminology: Change "rewind" to "rewrite" where appropriateIan Jackson2020-02-02
| | | | | | | | | | | | | | | | | | | | | In #928473, Colin Watson writes: > the use of "rewind" as a synonym for "non-fast-forwarding", while > somewhat common in git terminology, is unfortunate. The terms seem > to be borrowed from video playback systems, where "rewind" is often > just the exact opposite of "fast-forward", and so when I see > "rewinding history" in a few places in dgit(1) my initial > interpretation is that it must mean "updating a ref to point to an > ancestor of the commit that it previously pointed to", whereas I > think dgit(1) means "any push that isn't a fast-forward". I don't > know if I'm the only one for whom it has that connotation. This makes sense. So, I am changing uses of "rewind" which do not mean precisely going back to an ancestor. I think we can often use the word "rewrite" for the more general case, but there are some places where another wording is better. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tag2upload: Use the non-readonly method for dgit fetchIan Jackson2019-07-23
| | | | | | | The principal effect in the Debian configuration is to access the master dgit git server via ssh, rather than the mirror via https. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Update copyright notices in many filesIan Jackson2019-07-20
| | | | | | Mostly, adding 2019. Also adding some missing credits to Sean Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tag2upload: baredebian: Pass dgit refs/tags/, not the commit hashIan Jackson2019-07-17
| | | | | | | | | This will enable git to report the upstream tag in its messages. The tag name is safe to pass here since dgit only uses its referent, unless it is nice enough to print. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tag2upload: Actually recognise and honour --quilt in tagIan Jackson2019-07-17
| | | | | | | | | Non-default quilt modes were completely broken before. We only didn't notice because the existing tests worked with the default. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: parsetag: Print a bit more debug about junkIan Jackson2019-07-17
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Don't crash on --quilt=baredebianIan Jackson2019-07-17
| | | | | | | The die needs to be qualified. This little bit of fcode has never worked. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Remove comment saying it's a prototypeIan Jackson2019-07-07
| | | | | | | We have done everything to make it safe to use. Obviously it still needs some web service queue thing around it to invoke it. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Clarify key situation commentsIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Check changelog infoIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Better message from upstream mismatchIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Check the upstream tag syntax only onceIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Verify the tag slightly earlierIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Improve a messageIan Jackson2019-07-07
| | | | | | Could be multiple distro=, in which case any matching is OK. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Drop an obsolete commentIan Jackson2019-07-07
| | | | | | The usage comment says this script should be retried. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Improve a reject messageIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: log when we fail and emailIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Drop a debug $_ from quit messageIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Use a bpd and clean up origsIan Jackson2019-07-07
| | | | | | | This prevents us keeping forever the junk from uploads, and it prevents us reusing it too. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: tag2upload: Cope with native packagesIan Jackson2019-07-07
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: New prototype tag2upload mode for git-debpushIan Jackson2019-07-06
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: parsetag_general: Switch to $distrofnIan Jackson2019-07-06
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: parsetag_general: Abolish $mainfn, use readtagIan Jackson2019-07-06
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Break out readtagIan Jackson2019-07-06
| | | | | | No functional change other than to debug output. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: parsetag_general: New argument $need_distroIan Jackson2019-07-06
| | | | | | No functional change with the existing call site. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Break apart parsetag()Ian Jackson2019-07-06
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Prepare for modes which take argumentsIan Jackson2019-07-06
| | | | | | | Currently none do. Both the existing mode_ subroutines check @ARGV, so this has no overall change other than to error messages. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Break out basic_tag_checksIan Jackson2019-07-06
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* infra: Drop support for old tag name on server sideIan Jackson2019-06-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: runcmd: Break out from dgitIan Jackson2017-07-18
| | | | | | | | | | | | Move runcmd into Dgit.pm. We need to change dgit-repos-server too, but luckily its definition is essentially equivalent. No functional change to dgit. dgit-repos-server now prints somewhat better error messages when subprocesses fail. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Do not reject commits with no author/committer emailIan Jackson2017-07-16
| | | | | | | | | But still insist on date, and hence on the actual committer and author commit header fields. Peter Green reports that eg 66c65d90db100435 in upstream linux.git is such a commit (and is accepted by github). Closes:#863353. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* infrastructure: Cope with new git-receive-pack which has quarantine featureIan Jackson2017-07-08
| | | | | | | | | Ie, work around #867702. See the bug there for discussion. (We are perhaps flying a little close to the wind with our wrapper script location, but it doesn't seem likely to break, to me.) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* infra: dgit-repos-server: Break out mkscriptIan Jackson2017-07-08
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* infrastructure: Do not reject commits with no author/committer nameIan Jackson2017-01-18
| | | | | | | | | | | But still insist on email address and date). Peter Green reports that eg 71e128629ec786f3 in upstream xen.git is such a commit (and is accepted by github). Closes:#851716. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* infrastructure: Properly honour NOCOMMITCHECK policy hook exit status.Ian Jackson2017-01-18
| | | | | | Closes:#851800. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-repos-server: Defend against bad commits (from eg #849041).Ian Jackson2017-01-05
| | | | | | | Right now, this causes the test `debpolicy-quilt-gbp' to fail, because in this branch #849041 is unfixed. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Infra: Introduce Debian::Dgit::InfraIan Jackson2016-10-15
| | | | | | | This is used by all the Perl in dgit-infrastructure.deb. So far it does nothing, so no functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Copyright: Add notices to some more of the (larger) filesIan Jackson2016-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Split brain: dgit-repos-server: Permit pushing maintainer tag tooIan Jackson2016-09-25
| | | | | | | | | Split brain is going to need the maintainer tag on the dgit server. Allow clients to push the _both_ the DEP-14 and new dgit archive/ tag. In this case dgit-repos-server can largely ignore the DEP-14 tag. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Tag change: Update dgit-repos-serverIan Jackson2016-07-31
| | | | | | | | | | Change the calls to debiantag_old to changes to debiantags, and the regexp to tolerate either tag name. We need an additional check that we are not receiving the tag named by debiantag_new when debiantag_old already exists. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Tag change: Declare intent in docs etc.Ian Jackson2016-07-31
| | | | | | | Provide debiantag_new as well as debiantag_old. Change the docs and an important comment. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Tag change: Rename debiantag to debiantag_oldIan Jackson2016-07-31
| | | | | | | | | | | | | | | | | We are going to change the tag name of the main signed tag used by dgit to signal the user's intent to the archive server. Prepare for this by changing debiantag to debiantag_old and changing all call sites outside dgit itself. dgit will want to be able to generate either, depending on whether it's cooperating in an rpush with a new or old dgit so reintroduce a wrapper called debiantag there. This will also allow us to have dgit generate old tags for testing. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Properly quote package name when constructing regexp in ↵Ian Jackson2015-08-16
| | | | complete_file_from_dsc. Closes:#795736. Also, grep the code for likely similar problems elsewhere and improve a (harmless) instance in dgit-repos-server.