Обновляемый список последних статей Инфостарт для профиля Github

08.04.24

Разработка - Групповая разработка (Git, хранилище)

Не знаете, чем бы таким заполнить свой профиль Github? Заполните его своими статьями на Инфостарт! Этот простой workflow сам соберет список ваших последних статей и будет периодически обновлять его для актуализации данных.

Идея была подсмотрена у пакета Metrics. Его довольно часто можно встретить в Readme файлах профиля, в том числе и у 1Сников - если вы видели когда нибудь 3D модель графика активности, то это оно
 

Там есть много разных метрик и блоков, одним из которых является блок с последними статьями из dev.to. Мне показалось интересным сделать что-нибудь подобное для статей Инфостарт
 

Как добавить себе?

 

Данный проект называется infometrics-articlesЭто Action для Github Actions, который вы можете просто добавить в workflow репозитория вашего профиля:

  1. Если у вас еще нет Readme профиля - его нужно создать. Сделать это можно в репозитории профиля https://github.com/[Ваше имя пользователя]/[Ваше имя пользователя]
     
  2. В созданный Readme необходимо добавить блок следующего вида
    <div id="infostart_posts">
    
    </div>

    Внутри этого блока ничего не должно быть - он будет очищаться при обновлении списка статей
     

  3. Далее необходимо создать новый Action - делается это все в том же репозитории профиля. Необходимо перейти на вкладку Actions и нажать New workflow


     

  4. Нажать set up a workflow yourself


     

  5. В открывшемся редакторе вставить следующий код:
     

    name: Infostat
    on:
      schedule: [{cron: "0 0 * * *"}] # Расписание выполнения. В данном примере - каждый день в 0.00
      workflow_dispatch:
    jobs:
      Update:
        runs-on: ubuntu-latest 
        permissions:
            contents: write
        steps:
    
          - uses: bayselonarrend/infometrics-articles@1.1
            with:
              profile-id: '1793672'                 # ID профиля Infostart
              count: '3'                            # Количество выводимых статей. Необязательно, по умолчанию - 3, Максимум - 10
              # readme-file: './README.md'            # Путь к Readme файлу. Необязательно, по умолчанию - ./README.md (Регистр важен!)
              # template: './tm.html'                 # Путь к шаблону. См. далее. Необязательно, по умолчанию - стандартный шаблон

 

 

Прежде чем сохранять наш файл, рассмотрим и настроим параметры, которые он предлагает. Параметры идут после ключевого слова with:

  • profile-id - id профиля Инфостарт
  • count - количество выводимых постов. Максимум доступно 10 постов, по умолчанию установлено 3
  • readme-file - если ваш Readme файл имеет путь, отличный от ./README.md (регистр важен), этот параметр необходимо заполнить актуальным путем
  • template - пользовательский макет вывода статьи. Об этом мы поговорим далее
     


В самом начале вы также можете найти schedule - это расписание выполнения нашего workflow. В данном случае это 0.00 каждого дня. Вы можете поставить свое расписание, если хотите обновлять данные чаще или реже

 

 

 

Теперь данный yml-файл можно сохранить и worflow начнет работать

 

Вывод статей и пользовательские макеты

 

Вернемся к параметру template. По умолчанию, если данный параметр не указан, статьи в Readme файл выводятся следующим образом:

 

Используется стандартный макет подобного вида:

> <img src="%1" width="96" align="left">
> <h4 style="color: white;"><a href="%3">%2</a></h4>
> <small>%5</small>
> <br clear="left">
> 
> | :star: %4 |  :calendar: %6 |  :speech_balloon: %7 |  :eyes: %8 |
> |-|-|-|-|

 

Однако, если вам не нравится такое решение, вы легко можете создать своей собственный макет. Для этого необходимо создать новый текстовый файл любого расширения в репозитории вашего профиля и указать путь к нему в параметре template
 

template: './tm.html'

 

Внутри самого шаблона вы можете создавать необходимую структуру (MD/HTML) и использовать в ней следующие параметры

  • %1 - URL изображения
  • %2 - Заголовок статьи
  • %3 - Ссылка на статью
  • %4 - Число звезд
  • %5 - Описание статьи
  • %6 - Дата статьи
  • %7 - Комментарии
  • %8 - Просмотры

Важно! Вам не обязательно использовать все параметры - можно только необходимые. Сам макет создается на одну статью и единственное его ограничение - нельзя использовать <div>

 

Немного про Action

 

Немного про внутренности данного экшена

Основной обработчик infometrics-articles - os скрипт. Он запускается после установки OneScript и, при помощи http-запроса, функций работы со строками и такой то матери ТекстовогоДокумента, парсит html-страницу профиля Инфостарт, после чего записывает полученные данные в Readme на основе макета

Конечно, парсить страницу не очень надежно, но API для этого нет. Сам скрипт был проверен на ~20 профилей из топа Инфостарта - все отрабатывало правильно. Но ошибки все равно возможны и будет очень хорошо, если вы напишите о них в Issue при возникновении

Помимо прочего, использование os скрипта как основного обработчика подразумевает, что вы без проблем можете сами доработать Action под себя (или создать что-нибудь на его основе) - язык-то 1С. Достаточно лишь сделать форк

Ну, а пока это все


Спасибо за внимание!

 

 

 Мой GitHub:     https://gitub.com/Bayselonarrend 
 Лицензия MIT:   https://mit-license.org

Вступайте в нашу телеграмм-группу Инфостарт

github actions гитхаб workflow metrics

См. также

EDT Групповая разработка (Git, хранилище) Программист 1С v8.3 Бесплатно (free)

Плагин, расширяющий функциональность EDT, предоставляя возможность работы с хранилищем конфигурации 1С без использования 1С:ГитКонвертер.

04.08.2025    1670    ZigRinat85    3    

28

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Программист 1С v8.3 1С:Библиотека стандартных подсистем Абонемент ($m)

Дорогой дневник, мне не подобрать слов, чтобы описать боль и унижение, которые я испытал за последнее время, моя жизнь никогда не будет прежней... мне не удалось найти механизма поставки расширения конфигурации... но зато я научился это делать с помощью команд запуска "1С:Предприятие" и GIT...

1 стартмани

29.07.2025    2278    2    gorsheninsn    6    

24

Групповая разработка (Git, хранилище) Программист Бесплатно (free)

Разберем, как организовать работу с GIT, не покидая конфигуратор, и зачем может понадобиться автономный сервер. Вы узнаете о скриптах, которые автоматизируют взаимодействие с GIT прямо из 1С, а также о методах сборки / разборки обработок и расширений «на лету», которые значительно ускоряют процесс разработки и совместной работы.

22.07.2025    4404    ktb    17    

33

Групповая разработка (Git, хранилище) Системный администратор Программист Бесплатно (free)

Все больше команд начинают использовать при разработке 1С GIT. На самом деле производительность GIT так же ограничена и зависима от различных настроек и подходов, как и всеми нами любимая платформа 1С. Для комфортной работы с GIT в случае больших репозиториев необходимо выполнять оптимизацию алгоритмов взаимодействия. Опишу свой опыт. 

14.07.2025    1214    bborisko    0    

8

Групповая разработка (Git, хранилище) EDT OneScript Программист 1С v8.3 Бесплатно (free)

В данной публикации рассматривается пример реализации скрипта, который автоматизирует получение ветки из GIT репозитория и обновление конфигурации, если разработка проекта ведется в EDT.

11.06.2025    2435    AlexF1    4    

7

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) EDT Программист 1С v8.3 Бесплатно (free)

В процессе использования 1С:EDT и репозитория Git для обновлений релизов доработанных конфигураций появилась необходимость в регулярной загрузке конфигураций от вендора 1С в Git-репозиторий. Описанное в статье решение позволяет автоматизировать эту операцию и может быть полезным специалистам, занимающимися обновлениями с использованием 1C:EDT+Git

21.05.2025    3727    vladimir_iclsoft    3    

20

Групповая разработка (Git, хранилище) Обновление 1С Программист 1С v8.3 Россия Бесплатно (free)

Внедряем проверку новых версий прямо в расширение. Оповещайте о новых версиях и показывайте пользователям список изменений. Для разработчиков, которые хотят сэкономить время и повысить лояльность клиентов!

05.02.2025    5302    Nonik    10    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. YA_418728146 662 08.04.24 13:25 Сейчас в теме
Прикольная штука, спасибо!
2. ardn 698 09.04.24 09:52 Сейчас в теме
Однозначно - статья в закладки!
Оставьте свое сообщение