Как вы можете отслеживать или получать уведомления об изменениях в GitHub вики?

Существуют ли сервисные хуки для репозиториев GitHub wiki? Есть ли какой-то другой механизм, который GitHub предоставляет мне для отслеживания правок вики?

2 ответа

Решение

Push-подход: в документации по GitHub API вы можете найти документацию по настройке сервисных хуков, которые могут быть запущены для одного или нескольких событий. gollum Событие особенно поднимается каждый раз, когда обновляется вики-страница.

Подход на основе JSON: вы также можете использовать HTTP-API событий для получения отформатированного в JSON вывода о том, что происходит на GitHub, а затем применить некоторую фильтрацию, чтобы изолировать события типа GollumEvent,

Ниже приведен быстрый пример на основе jQuery

<html>
    <head>
        <title>Gollum events</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <script type="text/javascript">
            $(function() {
                $.getJSON('https://api.github.com/repos/holman/spark/events?callback=?', function(data) {

                    var list = $('#gollum-events');

                    $.each(data.data, function(key, val) {
                        if (val.type == "GollumEvent") {
                            $.each(val.payload.pages, function(key2, val2) {
                                list.append('<li id="' + key + '.' + key2 + '"><a href="' + val2.html_url + '">' + val2.page_name + '</a> [' + val.actor.login + ' @ ' + val.created_at + ']</li>');
                            });
                        }
                    });
                });
            });
        </script>
    </head>
    <body>
        <ul id="gollum-events"/>
    </body>
</html>

Подход, основанный на атомах: Последнее, но не менее важное: вы можете подписаться на ленту новостей об изменениях в вики Перейдите в раздел GitHub Wiki хранилища, выберите Pages Под вкладкой, наведите курсор на оранжевый значок, скопируйте ссылку и вставьте в свой любимый RSS-ридер.

Подписаться на изменения

Обновить:

Похоже, значок RSS-канала больше не отображается для вики.

Тем не менее, вы все равно можете создать URL самостоятельно

Я настроил задание Jenkins для извлечения нашей вики GitHub с https://github.com/IQSS/dvn.wiki.git с помощью триггера сборки @daily. На этапе сборки я выполняю команду оболочки, подобную этой, чтобы отправить нам электронное письмо:

echo "Вики DVN на GitHub обновлены. Проверьте наличие нового контента на https://github.com/IQSS/dvn/wiki/_history" | mail -s "Обнаружено обновление [dvn-wiki-уведомления]" dvn@example.com

Вот работа, если кто-то хочет посмотреть: https://build.hmdc.harvard.edu:8443/job/dvn-wiki-notifications/

Другие вопросы по тегам