Автоматическое обновление списка публикаций Инфостарт для Readme профиля. Реализовано при помощи Github Actions.
Это пока предрелиз - в нем могут быть баги. Он был проверен на ~20 профилей из топа Инфостарта, но все равно:
а) Рекомендуется сначала попробовать не в профиле, а в приватном репозитории
б) Будет очень хорошо, если при нахождении бага вы напишите в Issues
В файл Readme добавить блок следующего вида. Этот блок всегда должен быть пустой - при обновлении публикаций он будет затираться.
<div id="infostart_posts">
</div>
Создать новый Action в репозитории профиля. Пример yml файла ниже
name: Infostart
on:
schedule: [{cron: "0 0 * * *"}] # Расписание выполнения. В данном примере - каждый день в 0.00
workflow_dispatch:
jobs:
Update:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: bayselonarrend/infometrics-articles@1.2
with:
profile-id: '1793672' # ID профиля Infostart
count: '3' # Количество выводимых публикаций. Необязательно, по умолчанию - 3, Максимум - 10
readme-file: './README.md' # Путь к Readme файлу. Необязательно, по умолчанию - ./README.md (Регистр важен!)
Особенности национального Workflow: Github Actions и OneScript
Сегодня мы посмотрим на Github Actions - встроенный инструментарий Github для автоматизации рабочих процессов. Разберем, что это такое, зачем и причем тут OneScript.
:star: +37 :calendar: 25.03.2024 :speech_balloon: 3 :eyes: 1393
Для вывода публикаций используется текстовый шаблон по умолчанию, но вы можете использовать и свой. Для использования своего шаблона необходимо:
Создать любой текстовый файл, где будет хранится шаблон. В нем могут содержаться следующие параметры:
Например, шаблон по умолчанию
> <img src="https://github.com/Bayselonarrend/infometrics-articles/raw/main/%1" width="96" align="left">
> <h4 style="color: white;"><a href="https://github.com/Bayselonarrend/infometrics-articles/blob/main/%3">%2</a></h4>
> <small>%5</small>
> <br clear="left">
>
> | :star: %4 | :calendar: %6 | :speech_balloon: %7 | :eyes: %8 |
> |-|-|-|-|
- uses: bayselonarrend/infometrics-articles@1.2
with:
profile-id: '1793672'
count: '3'
readme-file: './README.md'
template: ./tm.html # Тут - tm.html в корне репозитория
По умолчанию в список публикаций выводится лучшие из профиля.
Также можно использовать другие фильтры:
Для этого измените yml файл и параметр filter
- uses: bayselonarrend/infometrics-articles@1.2
with:
profile-id: '1793672'
count: '3'
readme-file: './README.md' # Путь к Readme файлу. Необязательно, по умолчанию - ./README.md (Регистр важен!)
filter: 'Download' # Какие публикации выводить. Необязательно, по умолчанию - лучшие. Другие варианты: Top - Лучшие, Download - Топ-загрузок, Sale - Топ-продаж, Comment - Топ-комментариев, Show - Топ-просмотров, "" - Последние
В основе данного Action лежит скрипт на OneScript - вы легко можете доработать его под свои нужды, если вам так захочется. Шаблон вывода разметки для Readme тоже находится там.
Статья на Инфостарте: Обновляемый список последних статей Инфостарт для профиля Github