Commit graph

129 commits

Author SHA1 Message Date
Nils Philippsen
74752c3a3c Cope with dangling symlinks
The exists() method uses os.stat() instead of os.lstat() and so doesn't
work for symlinks pointing to a non-existent path. A corresponding
lexists() method doesn't exist yet.

Signed-off-by: Nils Philippsen <nils@redhat.com>
2020-06-25 10:30:33 +02:00
Nils Philippsen
34d165ab0d Fix hook links to Pagure hookrunner script, too
This doesn't attempt to prefix the base directory if a supplied `target`
is an absolute path (for debugging).

Fixes: fedora-infrastructure#9000

Signed-off-by: Nils Philippsen <nils@redhat.com>
2020-06-25 07:26:50 +00:00
Nils Philippsen
5175246b89 Fix wrong argument help string
Signed-off-by: Nils Philippsen <nils@redhat.com>
2020-06-25 07:26:50 +00:00
Nils Philippsen
a87c762569 Convert to pathlib API for easy path manipulation
The only left over is os.readlink() which was only introduced as
Path.readlink() in Python 3.9.

Signed-off-by: Nils Philippsen <nils@redhat.com>
2020-06-25 07:26:50 +00:00
Pierre-Yves Chibon
dc92c9d924 git/hooks: fix typo isinstance != instance
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-12 14:15:54 +02:00
Pierre-Yves Chibon
b631c49d08 git/hook: apparently the rev can be either a string or the pygit2.Oid object
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-11 21:39:32 +02:00
Pierre-Yves Chibon
18a674d74d git/hook: parse the revision/hash rather than the Oid object
Fixes https://pagure.io/fedora-infrastructure/issue/9016

Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-11 21:13:44 +02:00
Pierre-Yves Chibon
891dcaac2b distgit: give access to the fedora-messaging certs to the packager group
This solves the permission denied error packager would see otherwise
when pushing to dist-git as the hooks would fail to send notifications
on the fedora-messaging bus.

Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-10 10:06:13 +02:00
Stephen Smoogen
0082dc0996 make sure pkgs02 has tar and python2 installed 2020-06-09 22:32:53 -04:00
Pierre-Yves Chibon
de0b5d6abe git/hooks: point the post-receive-chained-forks file to the proper git hook from pagure
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-10 00:15:18 +02:00
Pierre-Yves Chibon
6e82268613 git/hooks: Start making the hooks crash less on rhel8/python3
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-06-06 21:17:05 +02:00
Pierre-Yves Chibon
e0ed6697f4 distgit: make the iad2 host closer to the current staging and different from phx2
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-25 23:10:15 +02:00
Pierre-Yves Chibon
7acddaeca5 git/hooks: adjusts the post-receive hooks so it loads the correct fedora-messaging config
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-20 11:23:28 +02:00
Pierre-Yves Chibon
cef92fff61 git/hooks: looks like moreutils fails to install on rhel8 atm
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-20 11:22:01 +02:00
Pierre-Yves Chibon
dd6c85b1e2 Adjust the list of packages to install for RHEL8/python3
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-20 11:21:14 +02:00
Pierre-Yves Chibon
633866fdff git/hooks: install the fedora-messaging certs and config file
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-20 11:20:57 +02:00
Pierre-Yves Chibon
7ee8003ba9 git/hooks: port from fedmsg to fedora-messaging
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2020-05-20 11:13:37 +02:00
Kevin Fenzi
81fb4582e7 ansible: change when conditions to use == instead of is when checking strings.
Signed-off-by: Kevin Fenzi <kevin@scrye.com>
2020-04-24 21:34:10 +02:00
Karsten Hopp
c9ed62ac32 update ansible_distribution_major_version conditionals
Signed-off-by: Karsten Hopp <karsten@redhat.com>
2020-04-24 21:34:10 +02:00
Aurélien Bompard
d98a7392a5 git/hooks: update package command to not use items
Signed-off-by: Aurélien Bompard <aurelien@bompard.org>
2019-06-11 17:56:22 +02:00
Pierre-Yves Chibon
ef61cb0d11 Do not seng git.receive fedmsg message upon changes to the requests git repo
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-12-13 14:50:43 +01:00
Pierre-Yves Chibon
85bd191653 Update post-receive-chained to use the new post-receive hook from pagure
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-11-21 11:46:49 +01:00
Patrick Uiterwijk
03136b922b And use the new getlogin()
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
2018-08-02 17:04:01 +00:00
Patrick Uiterwijk
7148f95bf8 With https pushing, we need to use the USER env var
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
2018-08-02 17:03:15 +00:00
Patrick Uiterwijk
e592912070 Actually, Todd was right and the failed text was invalid. Let's ignore
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
2018-07-19 00:00:59 +02:00
Patrick Uiterwijk
84141c0895 Pretty sure we want to encode
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
2018-07-18 23:44:21 +02:00
Todd Zullinger
c45689142e git/hooks: remove fedmsg_hook from post-receive-chained-forks
The fedmsg_hook no longer exists.  It was removed from the non-fork
post-receive-chained hook in 9875b043d ("Drop the fedmsg_hook since it
no longer exists", 2018-05-03).

Fixes the following warning when pushing to a fork:

    remote: sh: /usr/lib/python2.7/site-packages/pagure/hooks/files/fedmsg_hook.py: No such file or directory

Signed-off-by: Todd Zullinger <tmz@pobox.com>
2018-05-25 11:39:24 -04:00
Pierre-Yves Chibon
9875b043d3 Drop the fedmsg_hook since it no longer exists
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-05-03 12:07:40 +02:00
Pierre-Yves Chibon
3b1e225f73 Add missing get_default_branch 2018-05-03 10:40:13 +02:00
Kevin Fenzi
9bd9110781 Re-enable fedmsg hooks now that there is a acl allowing access to key 2018-04-19 16:42:36 +00:00
Pierre-Yves Chibon
dc86b22f90 Turn off the pagure fedmsg hook for now
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 17:39:48 +02:00
Pierre-Yves Chibon
e864768c74 Typi typoes...
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 15:49:44 +02:00
Pierre-Yves Chibon
7b6407df81 Technically we only need os.walk() on forks
The other namespace won't have sub-folders

Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 15:46:41 +02:00
Pierre-Yves Chibon
cab27352d2 Some more fixes to the script
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 15:26:02 +02:00
Pierre-Yves Chibon
c825ebf5a0 Another attempt at not going down the rabbit hole
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 15:22:17 +02:00
Pierre-Yves Chibon
8a180b87c0 Fix checking only a specific namespace
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 15:14:28 +02:00
Pierre-Yves Chibon
1320c7f424 Remove a debugging statement
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 14:06:21 +02:00
Pierre-Yves Chibon
da5d18632b Turn on the pagure fedmsg hook on all projects and forks
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 14:02:00 +02:00
Pierre-Yves Chibon
0b2079ca11 Add new script to check the post-receive hooks on dist-git
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 12:52:32 +02:00
Pierre-Yves Chibon
a09604d9b2 Add a custom post-receive-chained hook for forks
This hook doesn't send fedmsg messages on the git.receive topic
and does not notify the alternative arch folks about changes

Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2018-04-17 12:14:07 +02:00
Todd Zullinger
4a3ef1013c git/hooks: only use first line as project description
Hi all,

This is something I've seen for ages and thought should be fixed (either by
this patch and/or another which supports multi-line description files
properly).

I have an alternate version of this patch which side-steps the issue by adding
the X-Project header last, so if it's multiple lines it won't screw up other
headers.  I think this is the proper fix though.

If multi-line description files are really something which are desired, then a
commit on top of this change could add support for reading the remaining lines
from the description file and add them to the message body.

 roles/git/hooks/files/git.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
2018-02-22 21:58:11 +00:00
Todd Zullinger
476ca97e74 git (post-receive-alternativearch): use unicode for git output
The commit message and diff is stored in `full_change` as a string, via
`read_output()`.  This is passed to `TEXT` which is a unicode string.

When a commit message or diff contains non-ascii characters we get:

    UnicodeDecodeError: 'ascii' codec can't decode byte ...

Encode git output returned from `read_output()` as a unicode string and
define `full_change` as unicode for completeness.

Fixes #6040.
2018-01-19 16:40:08 +01:00
Kevin Fenzi
6837a16455 eeeeeee. thanks tmz 2018-01-02 20:01:20 +00:00
Kevin Fenzi
a072eba8df make checkout-seed handle rpms namespace. someday should handle others 2018-01-02 19:52:09 +00:00
Kevin Fenzi
f93a639600 Revert "revert the hook for now until the initial manifest is ready"
This reverts commit 8a6848385e.
2017-10-16 17:05:56 +00:00
Kevin Fenzi
8a6848385e revert the hook for now until the initial manifest is ready 2017-10-14 21:37:10 +00:00
Kevin Fenzi
3f74ce3fad grokmirror for pkgs/src 2017-10-14 20:36:18 +00:00
Patrick Uiterwijk
936e8b261a yum accepted pkg=, package calls it name=
Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
2017-10-09 00:38:26 +02:00
Patrick Uiterwijk
adcbf72f03 Packageize this, packageize that, packageize the world
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
2017-10-08 22:25:52 +00:00
Pierre-Yves Chibon
59fe50e3f1 Add support for the hooks setup by pagure itself on dist-git
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
2017-10-06 09:55:47 +02:00