Содержание

график и порядок его составления

Движение документов в бухгалтерском учете

Началом движения первичных документов в бухгалтерском учете является непосредственно их создание в организации, или их получение от иных организаций. Продолжением движения является обработка бумаг и принятие к учету. Концом этого процесса, называемого документооборотом, является передача документов в архив.

Определение 1

Документооборот – это движение различных документов в организации, начиная с момента их создания и апробации, до завершения их действия и передачи в архив.

Составлением графика документооборота на предприятии занимается главный бухгалтер предприятия. Первым этапом является то, что он узнает, какие именно первичные документы будет использовать предприятие. Все формы первичных документов, основания подписи данных документов должностными лицами организации и график движения таковых документов – это элементы учетной политики, и они регулируются на основании положений ПБУ 1/2008.

Это означает, что они должны представляться в приложениях, прилагаемых к учетной политике организации, и подписываться непосредственно руководителем предприятия. Первичные документы, которые были подтверждены к применению, перечисляются в соответствии с их номерами, закрепленными за каждым в альбоме унифицированных документов. Если предприятие само разрабатывает первичный документ, в обязательном порядке должна предоставляться форма с его необходимыми реквизитами. Отражения графика документооборота можно найти в приложении к учетной политике, оформленного в виде схемы или перечня работ по созданию, проверке или обработке документов, соответствующие отражению хозяйственной операции на счете бухгалтерского учета, который выполняется каждым отделением предприятия и всеми исполняющими, указывая их взаимосвязь и сроки выполнения работы.

Определение 2

Организация документооборота на предприятии и его регулирование дает возможность установить, сколько необходимых документов потребуется, и какое количество рационального числа сотрудников, обращающихся с документами, за минимальный срок их нахождения  в каждом отделе.

График документооборота

Пример графика документооборота представлен на рисунке:

В отделе “Создание документа” находятся следующие колонки:

  1. Количество единиц представленных документов.

  2. Человек, который ответственен за выписку документа.

  3. Отвечающий за оформление документа.

  4. Отвечающие за исполнение документа.

  5. Сроки исполнения документа.

В отделе “Проверка документа”:

  1. Человек, отвечающий за проверку.

  2. Сотрудник, предоставляющий на проверку.

  3. Порядок представления.

  4. Сроки представления документа.

В отделе “Обработка документа”:

  1. Кто выполняет обработку документа.

  2. Срок выполнения.

В отделе “Передача в архив”:

  1. Кем выполняется.

  2. Срок выполнения.

Составляя график документооборота, необходимо соблюдать следующие требования:

  1. Первичные учетные документы, которые принимаются в бухгалтерии, должны иметь все необходимые реквизиты.

  2. Принимая документы, сотрудник обязан проверить правильность арифметических вычислений.

  3. Необходимо следить, чтобы оформление документов происходило в соответствии с требованиями, которые установлены в законодательных и нормативных актах.

  4. Все изменения в документах обязательно должны заверяться подписями лиц, которые ответственны за их составление. указав дату самого исправления.

  5. Все правки должны быть исполнены только теми приемами, которые разрешены (корректурная и дополнительная бухгалтерская запись, красное сторно).

  6. Необходимо предоставить все требуемые документы по сделкам (договор и его дополнения,  накладные или акты исполнения, счета–фактуры, платежные поручения).

Нужна помощь преподавателя?

Опиши задание — и наши эксперты тебе помогут!

Описать задание

Порядок составления графика документооборота

В начале того, как главный бухгалтер составляет график документооборота, он устанавливает круг лиц, которые работают с первичными документами, это, например, служащие отдела снабжения, лица, которые ответственны за реализацию – маркетологи). В официальном порядке до них доносится информация о правилах оформления первичных документов, и в какие сроки они обязаны предоставить данные документы в бухгалтерию. Для этих целей, каждый исполнитель может получить выписку из графика документооборота, в которой перечислены документы, относящиеся к деятельности того, кто исполняет документ, в какой срок необходимо их предоставить и в какие именно подразделения предприятия. В приказе, выдаваемом руководителем организации, устанавливается ответственность за то, если сотрудник вовремя не предоставит документ в бухгалтерию.

Лица, которые создали и подписали данный документ, несут ответственность за то, чтобы соблюдался график документооборота, за то, чтобы документы оформлялись согласно всем требованиям, чтобы сотрудники в срок передавали их в бухгалтерию, для отражения в отчетности, и также за то, чтобы документы были оформлены достоверно.

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

Главный бухгалтер должен периодически заниматься оптимизацией документооборота. Для этого необходимо установить систему:

  1. Перечень необходимых документов, которые применяются на предприятии.

  2. Кто именно их сотрудников может подписывать такие документы и будет нести ответственность, за правильность оформления и за то, чтобы в срок доставить их в бухгалтерию.

  3. Рабочая схема, где указаны все действующие отделы организации.

  4. Порядок, по которому документ перемещается между различными отделами организации, когда наступает крайний срок для того, чтобы предоставить документ бухгалтерии.

  5. График, по которому документ движется внутри бухгалтерии, и который дает возможность организовать выплату налогов и составить бухгалтерскую отчетность в срок.

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

Вывод

Грамотная организация документооборота улучшает контрольную функцию учета, а также ускоряет срок выполнения бухгалтерского отчета, повышает его оперативность, которая так необходима при управлении учреждением.

Приказ об утверждении графика документооборота. Бланк и образец 2021 года

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

ФАЙЛЫ
Скачать пустой бланк приказа об утверждении графика документооборота .docСкачать образец приказа об утверждении графика документооборота .doc

Особенности графика документооборота

При составлении графика документооборота нужно провести подготовительную работу:

  • Учет всех документов, с которыми придется работать специалистам отдела.
  • Планирование сроков обработки бумаг.
  • Планирование сроков рассмотрения документации.
  • Распределение потока бумаг таким образом, чтобы при максимальной нагрузке соблюдались сроки обработки.

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

  • Ответственность перед сотрудниками за несвоевременное оформление бумаг о зарплате.
  • Ответственность перед государством за нарушение сроков подачи налоговой отчетности.
  • Конфликты с контрагентами за несвоевременную оплату по договорам.

Сотрудник, составляющий график, несет ответственность за стабильную работу фирмы в целом.

Приказ об утверждении графика

Сформированный график документооборота утверждается посредством распоряжения. К нему предъявляется ряд требований:

  • Наличие подписи директора.
  • Ознакомление с приказом всех работников.

Форма распоряжения не утверждена законом. Поэтому приказ может составляться в свободной форме.

В графике обычно присутствуют эти сведения:

  • Сотрудники, которые несут ответственность за заполнение того или иного документа.
  • Сроки вступления локальных актов в силу.
  • Порядок исполнения документов.
  • Способы ведения и хранения бумаг.
  • Ответственность за несвоевременное выполнение обязанностей, связанных с документооборотом.
  • Правила составления и оформления.
  • Сроки проверки формы и содержания документов.
  • Порядок утверждения бумаг.
  • Порядок передачи документов между структурными подразделениями.
  • Контроль за соблюдением графика.

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

Образец

ООО «Скрепка»

Приказ №44

г. Москва

19.02.2021 года

Об утверждении графика документооборота

Для обеспечения стабильной работы организации и рациональной организации документооборота

ПРИКАЗЫВАЮ:

1. Утвердить график документооборота на основании приложения №1.
2. Всем ответственным сотрудникам подавать первичную документацию в бухгалтерский отдел на основании утвержденного графика.
3. Полученные от контрагентов договоры направлять в бухгалтерию в сроки, зафиксированные в графике.
4. Контроль за исполнением графика возложить на главбуха Иванову П.О.

Гендиректор (подпись) Сибуров Р.О.

С приказом ознакомлены:

Иванова П.О. (подпись)

Страница не найдена |

Страница не найдена |

404. Страница не найдена

Архив за месяц

ПнВтСрЧтПтСбВс

       

       

     12

       

     12

       

      1

3031     

     12

       

15161718192021

       

25262728293031

       

    123

45678910

       

     12

17181920212223

31      

2728293031  

       

      1

       

   1234

567891011

       

     12

       

891011121314

       

11121314151617

       

28293031   

       

   1234

       

     12

       

  12345

6789101112

       

567891011

12131415161718

19202122232425

       

3456789

17181920212223

24252627282930

       

  12345

13141516171819

20212223242526

2728293031  

       

15161718192021

22232425262728

2930     

       

Архивы

Метки

Настройки
для слабовидящих

ПЛАН ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА – это.

.. Что такое ПЛАН ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА?
ПЛАН ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА
заранее намеченная система учетной деятельности, предусматривающая порядок и сроки выполнения работ, и состоящая из следующих элементов: план документации и документооборота; план инвентаризации; план счетов и их корреспонденции: план отчетности; план технического оформления учета; план организации труда работников бухгалтерии. В плане документации указывается перечень документов для учета хозяйственных операций и составляется расчет потребности в бланках. При этом организации могут использовать типовые формы первичных учетных документов или применять формы документов, разработанные самостоятельно. Формы первичных учетных документов, как типовых, так и разработанных самостоятельно, составляются с соблюдением требований законодательства. Основой организации первичного учета в организации является утвержденный главный бухгалтером график документооборота. Под документооборотом понимают путь, который проходят документы от момента их выписки до сдачи на хранение в архив. В графике документооборота определяется круг лиц, ответственных за оформление документов, и указывается порядок, место, время прохождения документа с момента составления до сдачи в архив. В плане инвентаризации определяют порядок, формы и сроки проведения плановых и внеплановых инвентаризации. План инвентаризации составляют с учетом того, чтобы проверка наличия ценностей не влияла на нормальную работу организации. Сроки проведения внеплановых инвентаризаций не должны быть известны материально ответственным лицам. В плане отчетности указываются: перечень отчетных форм, отчетный период, за который составляется та или иная форма отчета, сроки представления отчетности, наименования и адреса организаций и учреждений, а также фамилии должностных лиц, получающих отчеты, способ представления отчетов (почтой, телеграфом и др.) и фамилии работников, отвечающих за составление отчетности с точным указанием выполняемых ими работ. План отчетности состоит из двух частей. В первой части содержатся необходимые сведения по отчетности, представляемой внешним пользователем, во второй – по отчетности, получаемой от отдельных подразделений организации. В плане технического оформления учета дается детальная характеристика формы учета, которая будет применена в данной организации, а также указывается, какие вычислительные машины, приборы и устройства будут использованы в организации. При выборе формы учета организации обязаны руководствоваться указаниями и инструкциями по этому вопросу, учитывать конкретные условия работы организации, хорошо знать преимущества и недостатки действующих форм бухгалтерского учета. Автоматизация учета имеет место в плане технического оформления учета. Помимо использования вычислительных машин необходимо предусмотреть применение различных вычислительных таблиц и различного рода средств механизации измерения и счета: мерной тары, весов, счетчиков (газовых, электрических и т. п.). В плане организации труда работников бухгалтерии определяется структура аппарата бухгалтерии и штат бухгалтерии, дается должностная характеристика каждому работнику, намечаются мероприятия по повышению их квалификации, составляются графики учетных работ. Основным назначением графиков учетных работ является распределение работ между исполнителями, определение времени выполнения работ, намечаются мероприятия по научной организации труда счетных работников. Графики бывают индивидуальные, структурные и сводные. В индивидуальных графиках (календарных планах) указывается, какие работы должны выполняться каждым работником и срок их выполнения. Графиком регламентируется занятость работника и внутри рабочего дня и на более длительные периоды времени (месяц, квартал и т. д.). В структурных графиках указывается, какие работы и в какой срок должны выполняться отдельными структурными частями бухгалтерии или организации (расчетной группой бухгалтерии, складом, цехом и т. п.). В сводном графике указываются сроки выполнения отдельных учетных работ (составление отчетности, проведение инвентаризации и т. п.) по организации в целом. Он отражает весь учетный процесс и ответственность за его выполнение несет главный или старший бухгалтер организации. Графики учетных работ составляются в виде таблицы, причем в таблицах предусматриваются отметки о сроках выполнения запланированных работ.

Большой бухгалтерский словарь. — М.: Институт новой экономики. Под редакцией А.Н. Азрилияна. 1999.

  • ПЛАН КОМПАНИИ, ФИНАНСОВЫЙ ПОЛНЫЙ
  • ПЛАН ОТЧЕТНОСТИ

Полезное


Смотреть что такое “ПЛАН ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА” в других словарях:

  • ПЛАН ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА — заранее намеченная система мероприятий, предусматривающих порядок, последовательность и сроки выполнения учетных работ. П.о.б.у. составляется с учетом определенных условий и предпосылок. В общий П.о.б.у. входят планы отдельных учетных работ …   Большой экономический словарь

  • План счетов бухгалтерского учета — по законодательству РФ о бухгалтерском учете систематизированный перечень синтетических счетов бухгалтерского учета. Данное определение охватывает 2 аспекта: а) П.с.б.у. и инс …   Энциклопедия права

  • План счетов бухгалтерского учета — по законодательству РФ о бухгалтерском учете систематизированный перечень синтетических счетов бухгалтерского учета. Данное определение охватывает 2 аспекта: а) П.с.б.у. и инструкции по их применению как нормативные правовые акты органов, которым …   Большой юридический словарь

  • ПЛАН СЧЕТОВ БУХГАЛТЕРСКОГО УЧЕТА — система бухгалтерских счетов, предусматривающих их количество, группировку и цифровое обозначение в зависимости от объектов и целей учета; служит важнейшей предпосылкой правильной организации учета в народном хозяйстве. В П.с. включаются как… …   Большой бухгалтерский словарь

  • ПЛАН СЧЕТОВ БУХГАЛТЕРСКОГО УЧЕТА — система бухгалтерских счетов, предусматривающих их количество, группировку и цифровое обозначение в зависимости от объектов и целей учета; служит важнейшей предпосылкой правильной организации учета в народном хозяйстве. В П.с.б.у. включаются как… …   Большой экономический словарь

  • ПЛАН СЧЕТОВ БУХГАЛТЕРСКОГО УЧЕТА, ТИПОВОЙ — план счетов, применяемый всеми предприятиями определенной отрасли. Применение Т. п.с.б.у. необходимо для обеспечения единства бухгалтерского учета, облегчения составления сводных балансов и отчетов по отрасли, организации …   Большой экономический словарь

  • ПЛАН СЧЕТОВ БУХГАЛТЕРСКОГО УЧЕТА БЮДЖЕТНЫХ ОРГАНИЗАЦИЙ — перечень используемых в бюджетных организациях синтетических счетов бухгалтерского учета, систематизированный по установленным принципам. В Плане счетов счета сгруппированы в разделы, при этом отдельно выделены забалансовые счета. В основу… …   Большой бухгалтерский словарь

  • ПЛАН СЧЕТОВ БУХГАЛТЕРСКОГО УЧЕТА КРЕДИТНЫХ ОРГАНИЗАЦИЙ — система бухгалтерских счетов, применяемая кредитными организациями. План счетов введен в действие с 1 января 1998г. Причинами введения являются: необходимость приблизиться к международным стандартам; необходимость соответствовать новым… …   Большой бухгалтерский словарь

  • ПРАВА РУКОВОДИТЕЛЯ В ОРГАНИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА НА ПРЕДПРИЯТИИ — обусловленные законом, нормативными актами, учредительными документами возможности руководителя по организации учета на предприятии. Руководитель организации может в зависимости от объема учетной работы: а) учредить бухгалтерскую службу как… …   Большой бухгалтерский словарь

  • ПЛАН ТЕХНИЧЕСКОГО ОФОРМЛЕНИЯ БУХГАЛТЕРСКОГО УЧЕТА — намеченные мероприятия по практическому применению определенной формы бухгалтерского учета и его механизации. В плане предусматривается обеспечение счетной техникой и учетными регистрами, кто отвечает за оформление учетных регистров, какие работы …   Большой бухгалтерский словарь


Управление параметрами рабочего процесса

На вкладке рабочего процесса Параметры вы можете управлять временем выполнения действий, устанавливать триггеры отмены регистрации, добавлять связанные кампании и разрешать регистрацию в Salesforce.

Для доступа к настройкам рабочего процесса:

  • В своей учетной записи HubSpot перейдите к Automation > Workflows .
  • Наведите курсор на рабочий процесс , затем щелкните Изменить .
  • В редакторе рабочего процесса щелкните вкладку Настройки .

Чтобы посмотреть обзор настроек рабочего процесса, посмотрите видео ниже:

Общие

В разделе General вы можете управлять днями недели и временем, в которое могут выполняться действия, разрешать регистрацию контактов из Salesforce и связывать рабочие процессы на основе контактов с кампаниями HubSpot.

Установить время для выполнения действий

По умолчанию действия рабочего процесса выполняются, как только зарегистрированная запись достигает действия.Чтобы указать, когда могут иметь место действия:

  • Выберите Определенное время .
  • Выберите день из раскрывающегося меню. Затем используйте раскрывающееся меню , чтобы указать временной диапазон для выполнения действий. Время основано на часовом поясе, выбранном в настройках вашей учетной записи.
  • Чтобы добавить больше времени выполнения действия, нажмите Добавить часы .

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

  • Рабочий процесс попытается перенести действие на то же время в следующий доступный день.Однако, если время действия выходит за пределы указанного временного интервала, рабочий процесс вместо этого перенастроит действие на самое раннее доступное время следующего доступного дня.
  • Чтобы предотвратить перегрузку рабочего процесса, действия переносятся на выполнение в течение 15-минутного окна. Например, если следующее доступное время – 9:00, действия будут перенесены на время с 9:00 до 9:15.

Задержки и ветвления if / then не переносятся, но последующие действия будут.Например:

  • Рабочий процесс на основе сделок настроен на выполнение действий только с понедельника по четверг с 9:00 до 17:00.
  • Сделка вступает в двухдневную задержку в четверг, затем выходит из задержки в субботу.
  • После выхода из задержки в субботу сделка переходит к следующему этапу, который является ветвью if / then.
  • Сделка проверяется по ветке if / then, затем переходит по ветке YES. Следующее действие переносится на понедельник с 9:00 до 9:15.

Когда записи перепланированы для действия, действие покажет количество этих записей, например 1 контакт в этом действии . Чтобы просмотреть определенные записи и когда они будут перенесены для продолжения, щелкните действие , затем на правой панели щелкните вкладку [Объект] в действии .

Установить даты паузы для предотвращения выполнения действий

Вы можете настроить рабочий процесс, чтобы запретить выполнение действий в определенные даты.В этот день, когда запись достигает действия, действие приостанавливается до следующей доступной даты.

Например, вы создали рабочий процесс для предстоящей маркетинговой кампании. Если ваша кампания проводится в ноябре, возможно, вы не захотите отправлять электронные письма во время празднования Дня Благодарения в США. Вы можете добавить дату паузы, чтобы ваши действия по электронной почте не отправляли электронные письма 26 ноября. Контакты, которые достигли действия отправки электронной почты в этот день, получат свое электронное письмо на следующий день в полночь.

Даты паузы учитывают другие настройки даты при изменении расписания действий. Например, рабочий процесс настроен на выполнение действий только с понедельника по среду с 9:00 до 17:00. Если вы добавите дату паузы в среду, действия в этот день будут перенесены на следующий понедельник в 9 утра.

Обратите внимание: записи по-прежнему будут регистрироваться и вводиться с задержками и ответвлениями if / then в дни пауз. После того, как они войдут в рабочий процесс или покинут задержку или ветвь if / then, они сделают паузу при следующем действии.

Чтобы добавить дату паузы в рабочий процесс:

  • Менее В какие ближайшие дни вы хотите приостановить выполнение действий? нажмите + Добавить даты .

  • Выберите дату, щелкнув поле дата . Вы можете выбрать только дни в будущем, начиная с завтрашнего дня. Чтобы приостанавливать действия в один и тот же день каждый год, установите флажок Ежегодно .

  • Добавьте даты, нажав + Добавить даты , или нажмите Сохранить , чтобы сохранить изменения.

Когда для действия запланированы записи, действие покажет количество этих записей, например 1 контакт в этом действии . Чтобы просмотреть конкретные записи и продолжительность их приостановки, щелкните действие , затем на правой панели щелкните вкладку [Объект] в действии .

Разрешить регистрацию из Salesforce

В рабочих процессах на основе контактов, если вы установили интеграцию с Salesforce и добавили окно HubSpot Visualforce, вы можете выбрать регистрацию потенциальных клиентов и контактов Salesforce, которые синхронизировались с HubSpot. Чтобы зарегистрировать потенциальных клиентов или контакты Salesforce, выберите Да, разрешить регистрацию из Salesforce .

Узнайте больше о регистрации потенциальных клиентов или контактов Salesforce в рабочих процессах HubSpot непосредственно из Salesforce.

Свяжите свой рабочий процесс с кампанией HubSpot

Если вы являетесь пользователем Marketing Hub Professional или Enterprise , этот параметр рабочего процесса на основе контактов позволяет связать ваши рабочие процессы с любой из ваших кампаний.Щелкните раскрывающееся меню Кампании, связанное с , и выберите название кампании .

Когда кампания связана с рабочим процессом, в кампании будут доступны следующие данные:

  • Количество зарегистрированных контактов.
  • Количество контактов, которые присоединились к списку целей. Узнайте больше о настройке целей рабочего процесса.
  • Общий коэффициент конверсии рабочего процесса. Это вычисляется путем деления числа объединенного целевого списка на число запущенного рабочего процесса , а затем умножения на 100, чтобы получить процентное значение.

Отказ от участия и исключение

Настройки в разделе Отмена регистрации и подавление позволяют вам контролировать, какие записи и когда будут регистрироваться.

В рабочих процессах компании, сделок, расценок и заявок вы можете установить критерии, которые отменяют регистрацию активных записей, а также предотвращают их регистрацию или повторную регистрацию.

В рабочих процессах на основе контактов вы можете управлять регистрацией объединенных контактов, удалять контакты, которые больше не соответствуют критериям регистрации, и предотвращать регистрацию контактов в определенных списках.

Установить триггеры отмены регистрации для компаний, сделок, котировок и билетов

В рабочих процессах компании, сделок, расценок и заявок триггеры отмены регистрации удаляют активно зарегистрированные записи из рабочего процесса и предотвращают их регистрацию или повторную регистрацию.

  • Щелкните Установить триггеры отмены регистрации .
  • На правой панели установите триггеры отмены регистрации. Затем нажмите Применить фильтр . Узнайте больше о триггерах отмены регистрации в рабочих процессах.
  • Добавьте дополнительные триггеры отмены регистрации по мере необходимости, затем нажмите Сохранить .

Удалить зарегистрированные контакты из других рабочих процессов

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

  • Не удаляйте их из других рабочих процессов: контакты останутся зарегистрированными в других рабочих процессах.
  • Удалите их из всех других рабочих процессов: после того, как контакт будет зарегистрирован в этом рабочем процессе, они будут удалены из всех других рабочих процессов.
  • Удалить их из определенного рабочего процесса: После того, как контакт будет зарегистрирован в этом рабочем процессе, они будут удалены из любого рабочего процесса, который вы выберете в раскрывающемся меню. Щелкните раскрывающееся меню Удалить их из определенных рабочих процессов , чтобы выбрать конкретные рабочие процессы.

Разрешить объединенным контактам зарегистрироваться

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

  • Рабочие процессы, созданные до марта 2021 года, по умолчанию будут регистрировать контакты в результате слияния.
  • Рабочие процессы, созданные после марта 2021 года, по умолчанию не регистрируют контакты в результате слияния. Однако объединенные контакты могут зарегистрироваться в будущем, если они снова встретят триггеры регистрации и будет разрешена повторная регистрация.

Чтобы обновить регистрацию объединенного контакта в рабочем процессе, выберите для этого параметра Да, или Нет.

Удалить контакты, которые больше не соответствуют триггерам регистрации

Этот параметр определяет, будет ли удален контакт, если он больше не соответствует критериям триггера регистрации во время регистрации.

Нет, оставить их в этом рабочем процессе. По умолчанию выбран вариант . Выберите Да, удалить их из этого рабочего процесса , чтобы удалить контакты, когда они больше не соответствуют триггерам регистрации. Если для этого параметра установлено значение Да , контакты также нельзя будет зарегистрировать вручную.

Обратите внимание: , если у вас есть контакт, который в настоящее время зарегистрирован в рабочем процессе, который не соответствовал триггерам регистрации до того, как этот параметр был включен, он не будет исключен из рабочего процесса после включения параметра, и вам нужно будет вручную отменить регистрацию. Эта настройка также применима к тестовым контактам. Если вы зарегистрируете тестовый контакт, который не соответствует триггерам регистрации, когда этот параметр включен, он будет автоматически исключен из рабочего процесса и не будет выполнять ни один из шагов.

Добавить список подавления

В рабочих процессах на основе контактов щелкните раскрывающееся меню Списки подавления для этого рабочего процесса и выберите список контактов, которые вы не хотите регистрировать в рабочем процессе.

Обратите внимание: Если вы хотите отменить регистрацию или исключить записи в компании, сделке, расценке, заявке или пользовательских объектных рабочих процессах, узнайте, как установить триггеры отмены регистрации.


Добавление списка подавления в рабочий процесс приведет к одному из трех действий в зависимости от текущего статуса регистрации контакта:

  1. Контакт в настоящее время не зарегистрирован в рабочем процессе и является членом списка подавления : контакт не будет зарегистрирован в рабочем процессе, даже если он встретит триггеры регистрации позже, и появится в история рабочего процесса как обнаруженная в списке подавления и отмененная. Контакт также нельзя зарегистрировать вручную.
  2. Контакт в настоящее время зарегистрирован в рабочем процессе и является членом списка подавления: контакт будет отменен, когда он достигнет следующего шага рабочего процесса.
  3. Контакт в настоящее время зарегистрирован в рабочем процессе и не входит в список подавления: контакт останется в рабочем процессе. Однако, если они позже будут соответствовать критериям списка исключений, они будут отменены.

Если список подавления удаляется из параметров рабочего процесса или если контакты удаляются из списка подавления, эти контакты не будут автоматически регистрироваться в рабочем процессе, даже если они соответствуют триггерам регистрации рабочего процесса.Они смогут зарегистрироваться в следующий раз, когда они будут соответствовать критериям регистрации или повторной регистрации рабочего процесса.

Планирование повторяющихся задач и рабочих процессов в Azure Logic Apps – Azure Logic Apps

  • 17 минут на чтение

В этой статье

Logic Apps помогает создавать и запускать автоматические повторяющиеся задачи и процессы по расписанию.Создав рабочий процесс приложения логики, который начинается со встроенного триггера повторения или триггера скользящего окна, которые являются триггерами типа расписания, вы можете запускать задачи немедленно, позже или через повторяющийся интервал. Вы можете вызывать службы внутри и вне Azure, такие как конечные точки HTTP или HTTPS, публиковать сообщения в службах Azure, таких как служба хранилища Azure и служебная шина Azure, или загружать файлы в общую папку. С помощью триггера повторения вы также можете настроить сложные расписания и расширенные повторения для выполняемых задач.Дополнительные сведения о встроенных триггерах и действиях расписания см. В разделах «Триггеры расписания» и «Действия расписания».

Подсказка

Вы можете планировать и запускать повторяющиеся рабочие нагрузки, не создавая отдельного приложения логики для каждого запланированного задания и не выполняя ограничения на рабочие процессы для каждого региона и подписки. Вместо этого вы можете использовать шаблон приложения логики, созданный с помощью шаблона Azure QuickStart: планировщик заданий Logic Apps.

Шаблон планировщика заданий Logic Apps создает приложение логики CreateTimerJob, которое вызывает приложение логики TimerJob.Затем вы можете вызвать приложение логики CreateTimerJob как API, сделав HTTP-запрос и передав расписание в качестве входных данных для запроса. Каждый вызов приложения логики CreateTimerJob также вызывает приложение логики TimerJob, которое создает новый экземпляр TimerJob, который непрерывно запускается в соответствии с указанным расписанием или до достижения указанного ограничения. Таким образом, вы можете запускать столько экземпляров TimerJob, сколько хотите, не беспокоясь об ограничениях рабочего процесса, поскольку экземпляры не являются отдельными определениями или ресурсами рабочего процесса приложения логики.

В этом списке показаны некоторые примеры задач, которые можно запускать с помощью встроенных триггеров расписания:

  • Получение внутренних данных, например выполнение хранимой процедуры SQL каждый день.

  • Получайте внешние данные, например сводки погоды от NOAA каждые 15 минут.

  • Отправить данные отчета, например, по электронной почте сводку по всем заказам на сумму, превышающую определенную сумму, за последнюю неделю.

  • Обработка данных, например сжатие загруженных сегодня изображений каждый будний день в непиковые часы.

  • Очистить данные, например удалить все твиты старше трех месяцев.

  • Архивируйте данные, такие как push-счета, в службу резервного копирования в 1:00 каждый день в течение следующих девяти месяцев.

Вы также можете использовать встроенные действия по расписанию, чтобы приостановить рабочий процесс перед запуском следующего действия, например:

В этой статье описываются возможности встроенных триггеров и действий расписания.

Триггеры расписания

Вы можете запустить рабочий процесс приложения логики с помощью триггера повторения или триггера скользящего окна, который не связан с какой-либо конкретной службой или системой. Эти триггеры запускают и запускают ваш рабочий процесс на основе указанного вами повторения, где вы выбираете интервал и частоту, например количество секунд, минут, часов, дней, недель или месяцев. Вы также можете установить дату и время начала вместе с часовым поясом. Каждый раз при срабатывании триггера Logic Apps создает и запускает новый экземпляр рабочего процесса для вашего приложения логики.

Вот различия между этими триггерами:

  • Повторяемость : запускает рабочий процесс через регулярные промежутки времени в соответствии с указанным расписанием.Если триггер пропускает повторения, например, из-за сбоев или отключенных рабочих процессов, триггер повторения не обрабатывает пропущенные повторения, а перезапускает повторения со следующим запланированным интервалом.

    Если вы выберете Day в качестве частоты, вы можете указать часы дня и минуты часа, например, каждый день в 2:30. Если вы выберете Неделя в качестве частоты, вы также можете выбрать дни недели, например среду и субботу. Вы также можете указать дату и время начала, а также часовой пояс для расписания повторения.

    Подсказка

    Если повторение не указывает конкретную дату и время начала, первое повторение запускается немедленно. при сохранении или развертывании приложения логики, несмотря на настройку повторения триггера. Чтобы избежать такого поведения, предоставьте начало дата и время, когда вы хотите запустить первое повторение.

    Если для повторения не указаны какие-либо другие дополнительные параметры планирования, такие как конкретное время для запуска будущих повторений, эти повторения основаны на времени последнего выполнения. В результате время начала этих повторений может измениться из-за такие факторы, как задержка при обращении к хранилищу.Чтобы ваше приложение логики не пропустило повторения, особенно когда частота указывается в днях или дольше, попробуйте следующие варианты:

    • Укажите дату и время начала повторения плюс конкретное время, когда запускать последующие повторения, используя свойства с именем В эти часы и В эти минуты , которые доступны только для частот день и неделя .

    • Используйте триггер скользящего окна, а не триггер повторения.

    Для получения дополнительной информации см. Создание, планирование и выполнение повторяющихся задач и рабочих процессов с помощью триггера «Повторение».

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

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

График действий

После любого действия в рабочем процессе приложения логики можно использовать действия «Отложить» и «Отложить до», чтобы рабочий процесс ожидал выполнения следующего действия.

Шаблоны для даты и времени начала

Вот несколько шаблонов, которые показывают, как можно контролировать повторение с помощью даты и времени начала и как служба Logic Apps запускает эти повторения:

Время начала Повторение без расписания Повторение по расписанию (только триггер повторения)
{нет} Мгновенно выполняет первую рабочую нагрузку.

Выполняет будущие рабочие нагрузки на основе времени последнего выполнения.

Мгновенно выполняет первую рабочую нагрузку.

Выполняет будущие рабочие нагрузки по заданному расписанию.

Время начала в прошлом Триггер повторения : вычисляет время выполнения на основе указанного времени запуска и отбрасывает прошлое время выполнения.

Выполняет первую рабочую нагрузку в следующем будущем времени выполнения.

Выполняет будущие рабочие нагрузки на основе времени последнего выполнения.

Sliding Window trigger: вычисляет время выполнения на основе указанного времени запуска и учитывает прошедшее время выполнения.

Выполняет будущие рабочие нагрузки в соответствии с указанным временем начала.

Для получения дополнительных сведений см. Пример после этой таблицы.

Выполняет первую рабочую нагрузку не раньше , чем время начала, на основе расписания, рассчитанного с момента начала.

Выполняет будущие рабочие нагрузки по заданному расписанию.

Примечание: Если вы укажете повторение с расписанием, но не укажете часы или минуты для расписания, Logic Apps рассчитает будущее время выполнения, используя часы или минуты, соответственно, с первого времени выполнения.

Время начала сейчас или в будущем Выполняет первую рабочую нагрузку в указанное время начала.

Триггер повторения : выполняет будущие рабочие нагрузки на основе времени последнего выполнения.

Sliding Window trigger: Запускает будущие рабочие нагрузки в соответствии с указанным временем начала.

Выполняет первую рабочую нагрузку не раньше , чем время начала, на основе расписания, рассчитанного с момента начала.

Выполняет будущие рабочие нагрузки по заданному расписанию.

Примечание: Если вы укажете повторение с расписанием, но не укажете часы или минуты для расписания, Logic Apps рассчитает будущее время выполнения, используя часы или минуты, соответственно, с первого времени выполнения.

Пример прошлого времени начала и повторения, но без расписания

Предположим, что текущая дата и время – 8 сентября 2017 г., 13:00. Вы указываете дату и время начала как 7 сентября 2017 г. в 14:00, что в прошлом, и повторение, которое выполняется каждые два дня.

Время начала Текущее время Повторение График
09. 09.2017 07 T14: 00: 00Z
(2017-09- 07 в 14:00)
2017-09- 08 T13: 00: 00Z
(2017-09- 08 в 13:00)
Каждые два дня {нет}

Для триггера «Повторение» подсистема Logic Apps вычисляет время выполнения на основе времени запуска, отбрасывает прошлое время выполнения, использует время следующего будущего запуска для первого запуска и вычисляет будущие запуски на основе последнего времени выполнения.

Вот как выглядит это повторение:

Время начала Время первого запуска Время работы в будущем
09.09.2017 07 в 14:00 09.09.2017 09 14:00 09.09.2017 11 14:00 09.09.2017 13 14:00 09.09.2017 15 14:00 и так далее . ..

Итак, независимо от того, как далеко в прошлом вы указываете время начала, например, 2017-09-09 05 в 14:00 или 2017-09-09 01 в 14:00, ваш первый run всегда использует следующее время начала в будущем.

Для триггера скользящего окна механизм Logic Apps вычисляет время выполнения на основе времени запуска, учитывает прошлое время выполнения, использует время запуска для первого запуска и вычисляет будущие запуски на основе времени запуска.

Вот как выглядит это повторение:

Время начала Время первого запуска Время работы в будущем
09.09.2017 07 в 14:00 09.09.2017 08 в 13:00 (Текущее время) 09.09.2017 09 14:00 09.09.2017 11 14:00 09.09.2017 13 14:00 09.09.2017 15 14:00 и скоро. ..

Итак, независимо от того, как далеко в прошлом вы указываете время начала, например, 2017-09-09 05 в 14:00 или 2017-09-09 01 в 14:00, ваш первый run всегда использует указанное время начала.

Повторение перехода на летнее и зимнее время

Повторяющиеся встроенные триггеры учитывают установленное вами расписание, включая любой указанный вами часовой пояс. Если вы не выберете часовой пояс, переход на летнее время (DST) может повлиять на запуск триггеров, например, сдвиг времени начала на один час вперед при переходе на летнее время и на один час назад при окончании перехода на летнее время.При планировании заданий Logic Apps помещает сообщение для обработки в очередь и указывает, когда это сообщение становится доступным, на основе времени UTC, когда выполнялось последнее задание, и времени UTC, когда запланировано выполнение следующего задания.

Чтобы избежать этого сдвига и чтобы ваше приложение логики запускалось в указанное время начала, убедитесь, что вы выбрали часовой пояс. Таким образом, время в формате UTC для вашего приложения логики также сдвигается, чтобы противостоять сезонному изменению времени.

Примечание

Триггеры, которые запускаются с 2:00 до 3:00, могут иметь проблемы, потому что переход на летнее время происходит в 2:00, что может привести к тому, что время начала станет недействительным или неоднозначным.Если у вас есть несколько приложений логики в одном неоднозначном интервале, они могут перекрываться. По этой причине вы можете захотеть избегать времени начала с 2:00 до 3:00.

Например, предположим, что у вас есть два приложения логики, которые запускаются ежедневно. Одно приложение логики запускается в 1:30 по местному времени, а другое – на час позже, в 2:30 по местному времени. Что происходит со временем запуска этих приложений, когда начинается и заканчивается летнее время?

Если эти логические приложения используют зону UTC-6: 00 по центральному времени (США и Канада), это моделирование показывает, как время UTC сдвигалось в 2019 году, чтобы противостоять изменениям летнего времени, перемещаясь на один час назад или вперед по мере необходимости, чтобы приложения продолжали работу. работает в ожидаемое местное время без пропущенных или повторяющихся запусков.

  • 10.03.2019: летнее время начинается в 2:00, время переводится на час вперед

    Для компенсации после начала летнего времени время в формате UTC сдвигается на один час назад, чтобы ваше приложение логики продолжало работать в том же местном времени:

    • Приложение логики № 1

      Дата Время (местное) Время (UTC) Банкноты
      09.03.2019 1:30:00 7:30:00 UTC до дня перехода на летнее время.
      10.03.2019 1:30:00 7:30:00 UTC – то же самое, потому что летнее время не вступило в силу.
      11.03.2019 1:30:00 6:30:00 UTC сдвинулось на один час назад после того, как DST вступило в силу.
    • Приложение логики № 2

      Дата Время (местное) Время (UTC) Банкноты
      09. 03.2019 2:30:00 8:30:00 UTC до дня перехода на летнее время.
      10.03.2019 3:30:00 * 8:30:00 летнее время уже действует, поэтому местное время сдвинулось на час вперед, поскольку часовой пояс UTC-6: 00 изменился на UTC-5: 00. Дополнительные сведения см. В разделе «Триггеры, запускаемые с 2:00 до 3:00».
      11.03.2019 2:30:00 7:30:00 UTC сдвинулось на один час назад после того, как DST вступило в силу.
  • 03.11.2019: летнее время заканчивается в 2:00 и переводится на час назад

    Для компенсации время в формате UTC сдвигается на один час вперед, чтобы ваше приложение логики продолжало работать в то же местное время:

    • Приложение логики № 1

      Дата Время (местное) Время (UTC) Банкноты
      02. 11.2019 1:30:00 6:30:00
      11.03.2019 1:30:00 6:30:00
      11.04.2019 1:30:00 7:30:00
    • Приложение логики № 2

      Дата Время (местное) Время (UTC) Банкноты
      02.11.2019 2:30:00 7:30:00
      11.03.2019 2:30:00 8:30:00
      11.04.2019 2:30:00 8:30:00

Выполнить только один раз

Если вы хотите запускать приложение логики только один раз в будущем, вы можете использовать шаблон Scheduler: Run once jobs .После создания нового приложения логики, но до открытия конструктора приложений логики, в разделе Шаблоны из списка Категория выберите Расписание , а затем выберите этот шаблон:

Или, если вы можете запустить приложение логики с помощью . При получении HTTP-запроса – запросите триггер и передайте время начала в качестве параметра для триггера. Для первого действия используйте Задержка до – Запланировать действие и укажите время начала выполнения следующего действия.

Выполняется один раз в последний день месяца

Чтобы запустить триггер повторения только один раз в последний день месяца, необходимо изменить триггер в базовом определении JSON рабочего процесса с помощью представления кода, а не конструктора. Однако вы можете использовать следующий пример:

  "триггеры": {
    "Повторение": {
        "повторение": {
            "периодичность": "Месяц",
            «интервал»: 1,
            "расписание": {
                «monthDays»: [-1]
            }
        },
        "type": "Повторение"
    }
}
  

Пример повторения

Вот различные примеры повторений, которые можно настроить для триггеров, поддерживающих параметры:

Спусковой механизм Повторение Интервал Частота Время начала В эти дни В эти часы В эти минуты Примечание
Повторение,
Раздвижное окно
Запускать каждые 15 минут (без даты и времени начала) 15 Минуты {нет} {недоступно} {нет} {нет} Это расписание запускается немедленно, затем вычисляет будущие повторения на основе времени последнего выполнения.
Повторение,
Раздвижное окно
Запускать каждые 15 минут (с датой и временем начала) 15 Минуты startDate T startTime Z {недоступно} {нет} {нет} Это расписание не запускает раньше , чем указанные дата и время начала, а затем рассчитывает повторения в будущем на основе последнего времени выполнения.
Повторение,
Раздвижное окно
Запускать каждый час в час (с датой и временем начала) 1 Час startDate Thh: 00: 00Z {недоступно} {нет} {нет} Это расписание не начинается с раньше , чем указанные дата и время начала.Будущие повторения запускаются каждый час с отметкой «00» минут, которую Logic Apps рассчитывает от времени начала.

Если частота – «Неделя» или «Месяц», это расписание соответственно выполняется только один день в неделю или один день в месяц.

Повторение,
Раздвижное окно
Запускать каждый час, каждый день (без даты и времени начала) 1 Час {нет} {недоступно} {нет} {нет} Это расписание запускается немедленно и рассчитывает будущие повторения на основе времени последнего выполнения.

Если частота – «Неделя» или «Месяц», это расписание соответственно выполняется только один день в неделю или один день в месяц.

Повторение,
Раздвижное окно
Запускать каждый час, каждый день (с датой и временем начала) 1 Час startDate T startTime Z {недоступно} {нет} {нет} Это расписание не запускает раньше , чем указанные дата и время начала, а затем рассчитывает повторения в будущем на основе последнего времени выполнения.

Если частота – «Неделя» или «Месяц», это расписание соответственно выполняется только один день в неделю или один день в месяц.

Повторение,
Раздвижное окно
Запускать каждые 15 минут по истечении часа, каждый час (с указанием даты и времени начала) 1 Час Дата начала T00: 15: 00Z {недоступно} {нет} {нет} Это расписание не начинается с раньше , чем указанные дата и время начала.Будущие повторения выполняются с отметкой «15» минут, которую Logic Apps рассчитывает от времени начала, то есть в 00:15, 1:15, 2:15 и т. Д.
Повторение Запускать каждые 15 минут после часа, каждый час (без даты и времени начала) 1 День {нет} {недоступно} 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 15 Это расписание запускается в 00:15, 1:15, 2:15 и т. Д.Кроме того, это расписание эквивалентно частоте «Час» и времени начала «15 минут».
Повторение Выполняется каждые 15 минут с указанными отметками минут (без даты и времени начала). 1 День {нет} {недоступно} 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 0, 15, 30, 45 Это расписание не начинается до следующей указанной 15-минутной отметки.
Повторение Запускать ежедневно в 8:00 плюс минутная отметка с момента сохранения приложения логики 1 День {нет} {недоступно} 8 {нет} Без даты и времени начала это расписание запускается в зависимости от времени, когда вы сохраняете приложение логики (операция PUT).
Повторение Запускать ежедневно в 8:00 (с указанием даты и времени начала) 1 День Дата начала T08: 00: 00Z {недоступно} {нет} {нет} Это расписание не начинается с раньше , чем указанные дата и время начала. Будущие события запускаются ежедневно в 8:00.
Повторение Запускать ежедневно в 8:00 (без даты и времени начала) 1 День {нет} {недоступно} 8 00 Это расписание запускается в 8:00 каждый день.
Повторение Запускать ежедневно в 8:00 и 16:00 1 День {нет} {недоступно} 8, 16 0
Повторение Запускать ежедневно в 8:30, 8:45, 16:30 и 16:45 1 День {нет} {недоступно} 8, 16 30, 45
Повторение Запускать каждую субботу в 17:00 (без даты и времени начала) 1 неделя {нет} «Суббота» 17 0 Это расписание запускается каждую субботу в 17:00.
Повторение Запускать каждую субботу в 17:00 (с датой и временем начала) 1 неделя Дата начала T17: 00: 00Z «Суббота» {нет} {нет} Это расписание не запускает раньше , чем указанные дата и время начала, в данном случае 9 сентября 2017 г. в 17:00. Будущие повторения запускаются каждую субботу в 17:00.
Повторение Запускать каждый вторник, четверг в 17:00 плюс минутная отметка с момента сохранения приложения логики 1 неделя {нет} «Вторник», «Четверг» 17 {нет}
Повторение Запускать каждый час в рабочее время. 1 неделя {нет} Выберите все дни, кроме субботы и воскресенья. Выберите нужные часы дня. Выберите любые минуты часа, которые вы хотите. Например, если ваши рабочие часы с 8:00 до 17:00, выберите «8, 9, 10, 11, 12, 13, 14, 15, 16, 17» в качестве часов дня плюс «0» как минуты часа.
Повторение Запускать ежедневно по выходным 1 неделя {нет} «Суббота», «Воскресенье» Выберите нужные часы дня. Выберите нужные минуты часа. Это расписание запускается каждую субботу и воскресенье по указанному расписанию.
Повторение Запускается каждые 15 минут каждые две недели только по понедельникам 2 неделя {нет} «Понедельник» 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 0, 15, 30, 45 Это расписание запускается каждый второй понедельник через каждые 15 минут.
Повторение Запускать каждый месяц 1 Месяц startDate T startTime Z {недоступно} {недоступно} {недоступно} Это расписание не запускает раньше , чем указанные начальная дата и время, и рассчитывает будущие повторения в начальную дату и время. Если вы не укажете дату и время начала, в этом расписании будут использоваться дата и время создания.
Повторение Запускать каждый час в течение одного дня в месяц 1 Месяц {см. Примечание} {недоступно} 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 {см. Примечание} Если вы не укажете дату и время начала, в этом расписании будут использоваться дата и время создания. Чтобы управлять минутами для расписания повторения, укажите минуты часа, время начала или используйте время создания.Например, если время начала или время создания – 8:25, это расписание запускается в 8:25, 9:25, 10:25 и т. Д.

Следующие шаги

событий, запускающих рабочие процессы – GitHub Docs

Настройка событий рабочего процесса

Вы можете настроить рабочие процессы для запуска для одного или нескольких событий, используя синтаксис рабочего процесса на . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».«

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

 
на: нажмите
  

Пример: использование списка событий

 
на: [push, pull_request]
  

Пример: использование нескольких событий с типами действий или конфигурацией

Если вам нужно указать типы активности или конфигурацию для события, вы должны настроить каждое событие отдельно. Вы должны добавить двоеточие (: ) ко всем событиям, включая события без конфигурации.

  по:
  
  
  толкать:
    ветви:
      - главный
  pull_request:
    ветви:
      - главный
  
  page_build:
  выпускать:
    типы:
      - созданный
  

Для запуска рабочего процесса выполняются следующие шаги:

  1. В вашем репозитории происходит событие, и с результирующим событием связаны SHA фиксации и Git ref.

  2. В каталоге . github / workflows в вашем репозитории выполняется поиск файлов рабочего процесса в соответствующем коммите SHA или Git ref. Файлы рабочего процесса должны присутствовать в этом коммите SHA или Git ref, чтобы их можно было принять во внимание.

    Например, если событие произошло в определенной ветви репозитория, то файлы рабочего процесса должны присутствовать в репозитории этой ветви.

  3. Проверяются файлы рабочего процесса для этого коммита SHA и Git ref, и запускается новый рабочий процесс для всех рабочих процессов, которые имеют значения on: , соответствующие инициирующему событию.

    Рабочий процесс выполняется в коде вашего репозитория в том же коммите SHA и Git ref, которые инициировали событие. При запуске рабочего процесса GitHub устанавливает переменные среды GITHUB_SHA, (фиксация SHA) и GITHUB_REF (Git ref) в среде бегуна. Для получения дополнительной информации см. «Использование переменных среды».

Запланированные мероприятия

Расписание Событие позволяет запускать рабочий процесс в запланированное время.

Примечание. Событие по расписанию может быть отложено в периоды высокой загрузки рабочего процесса GitHub Actions.Время высокой загрузки включает начало каждого часа. Чтобы уменьшить вероятность задержки, запланируйте запуск рабочего процесса на другое время часа.

график
Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
нет данных по умолчанию нет ветки по умолчанию 9042 904 9042 Последняя ветвь 9042 9042 904

Вы можете запланировать запуск рабочего процесса в определенное время в формате UTC, используя синтаксис POSIX cron.Запланированные рабочие процессы выполняются на последней фиксации в стандартной или базовой ветке. Самый короткий интервал, в котором вы можете запускать запланированные рабочие процессы, – один раз в 5 минут.

В этом примере рабочий процесс запускается каждый день в 5:30 и 17:30 UTC:

  по:
  расписание:
    
    - cron: '30 5,17 * * * '

  

Синтаксис Cron состоит из пяти полей, разделенных пробелом, и каждое поле представляет собой единицу времени.

  ┌───────────── минут (0-59)
│ ┌───────────── час (0-23)
│ │ ┌───────────── день месяца (1-31)
│ │ │ ┌───────────── месяц (1–12 или ЯНВАРЬ-ДЕКАБРЬ)
│ │ │ │ ┌───────────── день недели (0-6 или вс-вс)
│ │ │ │ │
│ │ │ │ │
│ │ │ │ │
* * * * *
  

Эти операторы можно использовать в любом из пяти полей:

Оператор Описание Пример
* Любое значение * * * * * запускается каждую минуту каждого дня.
, Разделитель списка значений 2,10 4,5 * * * запускается на 2-й и 10-й минуте 4-го и 5-го часа каждого дня.
Диапазон значений 0 4-6 * * * запускается на 0-й минуте 4-го, 5-го и 6-го часа.
/ Значения шага 20/15 * * * * запускается каждые 15 минут, начиная с 20–59 минут (20, 35 и 50 минут).

Примечание: GitHub Actions не поддерживает нестандартный синтаксис @ год , @monthly , @weekly , @daily , @hourly и @reboot .

Вы можете использовать crontab guru, чтобы помочь сгенерировать синтаксис cron и узнать, в какое время он будет работать. Чтобы помочь вам начать работу, есть также список примеров гуру crontab.

Уведомления о запланированных рабочих процессах отправляются пользователю, который последним изменил синтаксис cron в файле рабочего процесса. Для получения дополнительной информации см. «Уведомления о запуске рабочего процесса».

Ручные события

Вы можете вручную запустить рабочий процесс. Чтобы запустить определенные рабочие процессы в репозитории, используйте событие workflow_dispatch .Чтобы запустить более одного рабочего процесса в репозитории и создать настраиваемые события и типы событий, используйте событие repository_dispatch .

workflow_dispatch
Полезные данные события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
workflow_dispatch Отправка ветки 9042 GITHUB_DISPATCH 904

Вы можете настроить определенные пользователем свойства ввода, значения ввода по умолчанию и необходимые вводы для события непосредственно в рабочем процессе.Когда рабочий процесс запущен, вы можете получить доступ к входным значениям в контексте github. event.inputs . Для получения дополнительной информации см. «Контексты».

Вы можете вручную запустить рабочий процесс с помощью API GitHub и из GitHub. Для получения дополнительной информации см. «Запуск рабочего процесса вручную».

Когда вы запускаете событие на GitHub, вы можете предоставить ref и любые входы непосредственно на GitHub. Для получения дополнительной информации см. «Использование входов и выходов с действием.«

Чтобы инициировать настраиваемое событие веб-перехватчика workflow_dispatch с помощью REST API, необходимо отправить запрос POST в конечную точку API GitHub и предоставить ref и любые необходимые входные данные . Дополнительные сведения см. В разделе «Создание события отправки рабочего процесса», конечная точка REST API.

Пример

Чтобы использовать событие workflow_dispatch , вам необходимо включить его в качестве триггера в файл рабочего процесса GitHub Actions. В приведенном ниже примере рабочий процесс запускается только тогда, когда он запускается вручную:

  на: workflow_dispatch
  
Пример конфигурации рабочего процесса

В этом примере определяется name и home input и распечатываются с помощью github.event.inputs.name и контексты github.event.inputs.home . Если дом не указан, печатается значение по умолчанию «Октовселенная».

  имя: запускаемый вручную рабочий процесс
на:
  workflow_dispatch:
    входы:
      имя:
        описание: 'Человек, которого следует приветствовать'
        требуется: правда
        по умолчанию: 'Octocat Мона'
      дом:
        описание: 'местоположение'
        требуется: ложь
        по умолчанию: «Октовселенная»

вакансии:
  скажи привет:
    работает: ubuntu-latest
    шаги:
      - запустить: |
          echo "Здравствуйте, $ {{github.event.inputs.name}}! "
          echo "- в $ {{github. event.inputs.home}}!"
  

repository_dispatch 904 фиксация n /

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

Вы можете использовать GitHub API для запуска события веб-перехватчика с именем repository_dispatch , если вы хотите запустить рабочий процесс для действий, происходящих за пределами GitHub. Для получения дополнительной информации см. «Создание события отправки репозитория».

Чтобы инициировать пользовательское событие repository_dispatch webhook, необходимо отправить запрос POST в конечную точку API GitHub и указать имя event_type для описания типа действия. Чтобы запустить рабочий процесс, необходимо также настроить рабочий процесс для использования события repository_dispatch .

Пример

По умолчанию все event_types запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса, когда конкретное значение event_type отправляется в полезной нагрузке веб-перехватчика repository_dispatch . Вы определяете типы событий, отправляемые в полезной нагрузке repository_dispatch , когда вы создаете событие отправки репозитория.

  по:
  repository_dispatch:
    типы: [открыт, удален]
  

События повторного использования рабочего процесса

workflow_call - это ключевое слово, используемое в качестве значения для в рабочем процессе так же, как событие.Это указывает на то, что рабочий процесс может быть вызван из другого рабочего процесса. Для получения дополнительной информации см. «Повторное использование рабочих процессов».

workflow_call
Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
repository_ Lastdispatch ветвь по умолчанию 904 904 ветка по умолчанию
9025 n / a рабочий процесс
Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
То же, что и рабочий процесс вызывающего абонента 9025 То же, что и рабочий процесс вызывающего абонента
Пример

Чтобы рабочий процесс можно было использовать повторно, он должен включать workflow_call как одно из значений на .В приведенном ниже примере рабочий процесс запускается только тогда, когда он вызывается из другого рабочего процесса:

  на: workflow_call
  

События Webhook

Вы можете настроить рабочий процесс для запуска при создании событий веб-перехватчика на GitHub. Некоторые события имеют более одного типа активности, запускающей событие. Если событие запускается более чем одним типом действия, вы можете указать, какие типы действий будут запускать рабочий процесс. Для получения дополнительной информации см. «Веб-перехватчики».

Не все события веб-перехватчика запускают рабочие процессы.Полный список доступных событий веб-перехватчика и их полезной нагрузки см. В разделе «События и полезные данные веб-перехватчика».

branch_protection_rule

Запускает рабочий процесс каждый раз при возникновении события branch_protection_rule . Это событие запускается более чем одним типом активности. Для получения информации о GraphQL API см. BranchProtectionRule.

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

Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
Branch_protection_rule 09 - удалено
  • 9 - Последнее изменение_правило_вветвления_2006 9025 - удалено
  • 9 9 в ветке по умолчанию
  • Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда правило защиты ветвей было создано или удалено .

      по:
      branch_protection_rule:
        типы: [создано, удалено]
      

    check_run

    Запускает рабочий процесс каждый раз при возникновении события check_run .Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Проверочные запуски».

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

    209 - завершено - завершено - завершено006209 - завершено - завершено в ветке по умолчанию
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    check_run Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда при выполнении проверки было запрошено повторно или выполнено .

      по:
      check_run:
        типы: [повторно запрошено, выполнено]
      

    check_suite

    Запускает рабочий процесс каждый раз при возникновении события check_suite . Это событие запускается более чем одним типом активности.Для получения информации о REST API см. «Проверить комплекты».

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

    Примечание: Для предотвращения рекурсивных рабочих процессов это событие не запускает рабочие процессы, если набор проверок был создан с помощью GitHub Actions.

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    check_suite
  • 6 - завершено 9021 - завершено
  • 9 зафиксировать в ветке по умолчанию
  • Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс.Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда пакет проверок был повторно запрошен или завершен .

      по:
      check_suite:
        типы: [повторно запрошено, выполнено]
      

    создать

    Запускает ваш рабочий процесс каждый раз, когда кто-то создает ветку или тег, который запускает событие create . Для получения информации о REST API см. «Создание справочника».

    Полезная нагрузка события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
    Тег создать последнюю ветку или создать ветку 906 n / a ветка создана или нет. создано

    Например, вы можете запустить рабочий процесс при возникновении события create .

      по:
      Создайте
      

    удалить

    Запускает ваш рабочий процесс каждый раз, когда кто-то удаляет ветку или тег, что вызывает событие delete . Для получения информации о REST API см. «Удаление ссылки».

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    Удалить 904 по умолчанию ветвь по умолчанию 9042 904 904 904 фиксация по умолчанию ветвь

    Например, вы можете запустить рабочий процесс при возникновении события удалить .

      по:
      удалять
      

    развертывание

    Запускает ваш рабочий процесс каждый раз, когда кто-то создает развертывание, которое запускает событие развертывание . Развертывания, созданные с помощью фиксации SHA, могут не иметь ссылки Git. Для получения информации о REST API см. «Развертывания».

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    Развертывание тега 9042 9042 развернутый или развернутый 9042 пусто, если фиксация)

    Например, вы можете запустить рабочий процесс при возникновении события развертывания .

      по:
      развертывание
      

    deployment_status

    Запускает ваш рабочий процесс в любое время, когда третья сторона сообщает о состоянии развертывания, которое запускает событие deployment_status . Развертывания, созданные с помощью фиксации SHA, могут не иметь ссылки Git. Для получения информации о REST API см. «Создание статуса развертывания».

    Полезная нагрузка события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
    Deployment_status
    Deployment_status 9025 9025 Развернутый тег для тега 904 пусто при фиксации)

    Например, вы можете запустить рабочий процесс при возникновении события deployment_status .

      по:
      Deploy_status
      

    Примечание: Если состояние статуса развертывания установлено на неактивно , событие веб-перехватчика не будет создано.

    обсуждение

    Запускает рабочий процесс каждый раз, когда происходит событие обсуждение . Это событие запускается более чем одним типом активности. Для получения информации о GraphQL API см. «Обсуждения».

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

    2009 удалено - удалено
    - закреплено
    - откреплено
    - помечено
    - немаркировано
    - заблокировано
    - разблокировано
    - category_changed
    -
    920 ответили 21 без ответа 21 21 ответили в ветке по умолчанию
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    обсуждение Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда обсуждение было создано , отредактировано или отвечено .

      по:
      обсуждение:
        типы: [создан, отредактирован, ответил]
      

    Запускает рабочий процесс каждый раз, когда происходит событие обсуждение_комментария . Это событие запускается более чем одним типом активности.Для получения информации о GraphQL API см. «Обсуждения».

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    обсуждение_комментарий 9021 9021 - удалено - создано зафиксировать в ветке по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, если комментарий к проблеме был создан или удален .

      по:
      комментарий_обсуждения:
        типы: [создано, удалено]
      

    вилка

    Запускает ваш рабочий процесс в любое время, когда кто-то разветвляет репозиторий, что вызывает событие fork .Для получения информации о REST API см. «Создание вилки».

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

    906 906 904 ветвь по умолчанию 9042 фиксация по умолчанию 9049 n / a ветка по умолчанию

    Например, вы можете запустить рабочий процесс при возникновении события fork .

      по:
      вилка
      

    голлум

    Запускает ваш рабочий процесс, когда кто-то создает или обновляет вики-страницу, что вызывает событие gollum .

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    ветвь по умолчанию
    9042 9042
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    gollum ветвь по умолчанию
    по умолчанию ветвь 904 9042 фиксация n 904

    Например, вы можете запустить рабочий процесс, когда происходит событие gollum .

      по:
      голлум
      

    Запускает рабочий процесс каждый раз при возникновении события issue_comment . Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Комментарии к проблеме».

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    issue_comment ed 9021
  • 9 - создано фиксация в ветке по умолчанию
  • Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс.Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, если комментарий к проблеме был создан или удален .

      по:
      issue_comment:
        типы: [создано, удалено]
      

    Событие issue_comment возникает для комментариев как к проблемам, так и к запросам на вытягивание. Чтобы определить, было ли событие issue_comment инициировано проблемой или запросом на вытягивание, вы можете проверить полезную нагрузку события для проблемы .pull_request и используйте его как условие пропуска задания.

    Например, вы можете выбрать запуск задания pr_commented , когда события комментариев происходят в запросе на вытягивание, и задания issue_commented , когда события комментариев происходят в проблеме.

      на: issue_comment
    
    вакансии:
      pr_commented:
        
        название: PR-комментарий
        если: $ {{github.event.issue.pull_request}}
        работает: ubuntu-latest
        шаги:
          - запустить: |
              echo "Комментарий к PR # $ {{github.event.issue.number}} "
    
      issue_commented:
        
        имя: Комментарий к проблеме
        если: $ {{! github.event.issue.pull_request}}
        работает: ubuntu-latest
        шаги:
          - запустить: |
              echo "Комментарий к проблеме № $ {{github.event.issue.number}}"
      

    выпусков

    Запускает рабочий процесс каждый раз при возникновении события issues . Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Проблемы».

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

    2009 удалено - удалено
    - закреплено
    - откреплено
    - закрыто
    - открыто
    - назначено
    - не назначено
    - помечено
    - заблокировано
    - миль
    - demilestoned
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    выпусков открыто Последняя фиксация в ветке по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда проблема была открыта , отредактирована или миль с пробегом .

      по:
      вопросы:
        типы: [открытые, отредактированные, проверенные]
      

    этикетка

    Запускает рабочий процесс каждый раз, когда происходит событие label .Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Ярлыки».

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

    2009 удалена 9021 - зафиксировать в ветке по умолчанию
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    метка Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда метка была создана или удален .

      по:
      метка:
        типы: [создано, удалено]
      

    этап

    Запускает рабочий процесс каждый раз, когда происходит событие веха . Это событие запускается более чем одним типом активности.Для получения информации о REST API см. «Основные этапы».

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

    909 - создано закрыто
    - удалено
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    веха открыта Последняя фиксация в ветке по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда этап был открыт или удален .

      по:
      веха:
        типы: [открыт, удален]
      

    page_build

    Запускает ваш рабочий процесс каждый раз, когда кто-то нажимает на ветку GitHub Pages, которая запускает событие page_build .Для получения информации о REST API см. «Страницы».

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

    Полезные данные события Webhook Типы действий GITHUB_SHA GITHUB_REF
    page_build по умолчанию 902 904 904 a6 906 906

    Например, вы можете запустить рабочий процесс при возникновении события page_build .

      по:
      page_build
      

    проект

    Запускает рабочий процесс каждый раз при возникновении события проекта . Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Проекты».

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    проект обновлен00 открыта - 909 909
  • 9 обновлено
  • 909
    - отредактировано
    - удалено
    Последняя фиксация в ветке по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда проект был создан или удален .

      по:
      проект:
        типы: [создано, удалено]
      

    карта_проекта

    Запускает рабочий процесс каждый раз при возникновении события project_card . Это событие запускается более чем одним типом активности.Для получения информации о REST API см. «Карточки проекта».

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

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    project_card преобразовано в 9021 - созданная проблема - отредактировано
    - удалено
    Последняя фиксация в ветке по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда карточка проекта была открыта или удален .

      по:
      project_card:
        типы: [создано, удалено]
      

    project_column

    Запускает рабочий процесс каждый раз при возникновении события project_column . Это событие запускается более чем одним типом активности.Для получения информации о REST API см. «Столбцы проекта».

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

    209 удалено - создано
    Полезные данные события Webhook Типы действий GITHUB_SHA GITHUB_REF
    project_column Последняя фиксация в ветви по умолчанию Ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда столбец проекта был создан или удален .

      по:
      project_column:
        типы: [создано, удалено]
      

    общественный

    Запускает ваш рабочий процесс каждый раз, когда кто-то делает частный репозиторий общедоступным, что вызывает общедоступное событие .Для получения информации о REST API см. «Редактировать репозитории».

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

    по умолчанию ветвь по умолчанию 9042 904 фиксация на ветке по умолчанию 904

    Например, вы можете запустить рабочий процесс, когда происходит общедоступное событие .

      по:
      общественный
      

    pull_request

    Запускает рабочий процесс каждый раз при возникновении события pull_request . Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Запросы на извлечение».

    Примечания:

    • По умолчанию рабочий процесс запускается только тогда, когда тип действия pull_request равен открыт , синхронизирован или открыт повторно . Чтобы запустить рабочие процессы для большего количества типов действий, используйте ключевое слово types .
    • Рабочие процессы не будут выполняться в действии pull_request , если запрос на перенос имеет конфликт слияния. Сначала необходимо разрешить конфликт слияния.
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    общедоступный
    209 909
    открыт
    отредактирован
    закрыт
    повторно открыт
    синхронизировать
    convert_to_draft
    ready_for_review -
    - review_request_removed
    - auto_merge_enabled
    - auto_merge_disabled
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    присвоено pull_request21 - не назначено 909 Последняя фиксация слияния на GITHUB_REF ветвь PR слияние ветвь 906/906 или ограничьте типы действий по умолчанию с помощью ключевого слова types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда запросу на вытягивание было присвоено , открыли , синхронизировали или повторно открыли .

      по:
      pull_request:
        типы: [назначены, открыты, синхронизируются, повторно открыты]
      
    События Pull request для разветвленных репозиториев

    Примечание: Рабочие процессы не запускаются в частных базовых репозиториях, когда вы открываете запрос на вытягивание из разветвленного репозитория.

    Когда вы создаете запрос на вытягивание из разветвленного репозитория в базовый репозиторий, GitHub отправляет событие pull_request в базовый репозиторий, и в разветвленном репозитории не происходит никаких событий запроса на вытягивание.

    По умолчанию рабочие процессы не запускаются в разветвленных репозиториях. Вы должны включить GitHub Actions на вкладке Actions разветвленного репозитория.

    Когда участник, впервые участвующий в программе, отправляет пул-реквест в публичный репозиторий, специалисту по сопровождению с правом записи может потребоваться утвердить запущенные рабочие процессы для пул-реквеста.Дополнительные сведения см. В разделе «Утверждение рабочего процесса, запущенного из общедоступных вилок».

    За исключением GITHUB_TOKEN , секреты не передаются бегуну, когда рабочий процесс запускается из разветвленного репозитория. Разрешения для GITHUB_TOKEN в разветвленных репозиториях доступны только для чтения. Для получения дополнительной информации см. «Аутентификация с помощью GITHUB_TOKEN».

    Примечание. Рабочие процессы, запускаемые запросами на извлечение Dependabot, обрабатываются так, как если бы они исходили из разветвленного репозитория, и на них также распространяются эти ограничения.

    pull_request_review

    Запускает рабочий процесс каждый раз, когда происходит событие pull_request_review . Это событие запускается более чем одним типом активности. Дополнительные сведения об REST API см. В разделе «Проверка запросов на извлечение».

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    pull_request_review2009 - завершен фиксация в ветви GITHUB_REF Ветка слияния PR refs / pull /: prNumber / merge

    По умолчанию все типы действий запускают рабочий процесс.Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда проверка запроса на вытягивание была отредактирована или отклонена .

      по:
      pull_request_review:
        типы: [отредактировано, отклонено]
      
    События Pull request для разветвленных репозиториев

    Примечание: Рабочие процессы не запускаются в частных базовых репозиториях, когда вы открываете запрос на вытягивание из разветвленного репозитория.

    Когда вы создаете запрос на вытягивание из разветвленного репозитория в базовый репозиторий, GitHub отправляет событие pull_request в базовый репозиторий, и в разветвленном репозитории не происходит никаких событий запроса на вытягивание.

    По умолчанию рабочие процессы не запускаются в разветвленных репозиториях. Вы должны включить GitHub Actions на вкладке Actions разветвленного репозитория.

    Когда участник, впервые участвующий в программе, отправляет пул-реквест в публичный репозиторий, специалисту по сопровождению с правом записи может потребоваться утвердить запущенные рабочие процессы для пул-реквеста. Дополнительные сведения см. В разделе «Утверждение рабочего процесса, запущенного из общедоступных вилок».

    За исключением GITHUB_TOKEN , секреты не передаются бегуну, когда рабочий процесс запускается из разветвленного репозитория. Разрешения для GITHUB_TOKEN в разветвленных репозиториях доступны только для чтения. Для получения дополнительной информации см. «Аутентификация с помощью GITHUB_TOKEN».

    Примечание. Рабочие процессы, запускаемые запросами на извлечение Dependabot, обрабатываются так, как если бы они исходили из разветвленного репозитория, и на них также распространяются эти ограничения.

    Запускает рабочий процесс каждый раз, когда изменяется комментарий к унифицированному различию запроса на вытягивание, что вызывает событие pull_request_review_comment . Это событие запускается более чем одним типом активности. Для получения информации о REST API см. Комментарии к обзору.

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    pull_request_21 902 902 909 удалено 909 - добавлено 909 - добавлено 909 фиксация в ветви GITHUB_REF Ветка слияния PR refs / pull /: prNumber / merge

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, если комментарий для проверки запроса на вытягивание был создан или удален .

      по:
      pull_request_review_comment:
        типы: [создано, удалено]
      
    События Pull request для разветвленных репозиториев

    Примечание: Рабочие процессы не запускаются в частных базовых репозиториях, когда вы открываете запрос на вытягивание из разветвленного репозитория.

    Когда вы создаете запрос на вытягивание из разветвленного репозитория в базовый репозиторий, GitHub отправляет событие pull_request в базовый репозиторий, и в разветвленном репозитории не происходит никаких событий запроса на вытягивание.

    По умолчанию рабочие процессы не запускаются в разветвленных репозиториях. Вы должны включить GitHub Actions на вкладке Actions разветвленного репозитория.

    Когда участник, впервые участвующий в программе, отправляет пул-реквест в публичный репозиторий, специалисту по сопровождению с правом записи может потребоваться утвердить запущенные рабочие процессы для пул-реквеста.Дополнительные сведения см. В разделе «Утверждение рабочего процесса, запущенного из общедоступных вилок».

    За исключением GITHUB_TOKEN , секреты не передаются бегуну, когда рабочий процесс запускается из разветвленного репозитория. Разрешения для GITHUB_TOKEN в разветвленных репозиториях доступны только для чтения. Для получения дополнительной информации см. «Аутентификация с помощью GITHUB_TOKEN».

    Примечание. Рабочие процессы, запускаемые запросами на извлечение Dependabot, обрабатываются так, как если бы они исходили из разветвленного репозитория, и на них также распространяются эти ограничения.

    pull_request_target

    Это событие запускается в контексте базы запроса на вытягивание, а не в фиксации слияния, как событие pull_request . Это предотвращает выполнение небезопасного кода рабочего процесса из заголовка запроса на вытягивание, который может изменить ваш репозиторий или украсть любые секреты, которые вы используете в своем рабочем процессе. Это событие позволяет вам делать такие вещи, как создание рабочих процессов, которые маркируют и комментируют запросы на вытягивание на основе содержимого полезных данных события.

    Предупреждение: Событию pull_request_target предоставляется токен репозитория для чтения / записи, и он может получить доступ к секретам, даже если он запускается из вилки. Несмотря на то, что рабочий процесс выполняется в контексте базы запроса на извлечение, следует убедиться, что вы не извлекаете, не собираете или не запускаете ненадежный код из запроса на извлечение с этим событием. Кроме того, любые кеши имеют ту же область видимости, что и базовая ветвь, и, чтобы предотвратить заражение кеша, вы не должны сохранять кеш, если есть вероятность того, что содержимое кеша было изменено.Дополнительные сведения см. В разделе «Обеспечение безопасности действий и рабочих процессов GitHub: предотвращение запросов pwn» на веб-сайте GitHub Security Lab.

    Полезная нагрузка события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
    pull_request_target
  • 9 не назначено
  • - назначено 9021 - не назначено

    - открыт
    - отредактирован
    - закрыт
    - повторно открыт
    - синхронизировать
    - convert_to_draft
    - ready_for_review - -
    - review_request_removed
    - auto_merge_enabled
    - auto_merge_disabled
    Последняя фиксация в базовой ветке PR Базовая ветвь PR
    9000_target только при запуске, a по умолчанию, a_request _target Тип активности : открыт , синхронизирован или повторно открыт . Чтобы запустить рабочие процессы для большего количества типов действий, используйте ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда запросу на вытягивание было присвоено , открыли , синхронизировали или повторно открыли .

      по:
      pull_request_target:
        типы: [назначены, открыты, синхронизируются, повторно открыты]
      

    нажимать

    Примечание: Полезная нагрузка веб-перехватчика, доступная для GitHub Actions, не включает атрибуты , добавленные , , удаленные и , измененные атрибуты в объекте commit .Вы можете получить полный объект фиксации с помощью REST API. Для получения дополнительной информации см. «Получение фиксации».

    Запускает рабочий процесс, когда кто-то отправляет сообщение в ветку репозитория, что вызывает событие push .

    906 )
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    , если ветвь по умолчанию не отправлена, Обновлено ref

    Например, вы можете запустить рабочий процесс при возникновении события push .

      по:
      толкать
      

    registry_package

    Запускает рабочий процесс в любое время, когда пакет опубликован или обновлен . Дополнительные сведения см. В разделе «Управление пакетами с помощью пакетов GitHub».

    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    опубликованный пакет реестра 902
  • 9 902 902 902 902 902 902 опубликованный 902 902 902 902 902 Ветвь или тег опубликованного пакета
  • По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда пакет был опубликован .

      по:
      registry_package:
        типы: [опубликовано]
      

    выпуск

    Примечание: Событие выпуска не запускается для черновых версий.

    Запускает рабочий процесс каждый раз, когда происходит событие выпуска .Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Выпуски».

    909 опубликован 09 - создан
    удален
    предварительно выпущен
    выпущен
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    релиз опубликован 09
    Последняя фиксация в выпуске с тегами Тег выпуска

    По умолчанию все типы действий запускают рабочий процесс. Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда был выпущен выпуск , опубликованный .

      по:
      выпускать:
        типы: [опубликовано]
      

    Примечание: Предварительно выпущенный тип не сработает для предварительных релизов, опубликованных из черновых версий, но сработает опубликованный тип .Если вы хотите, чтобы рабочий процесс запускался при публикации стабильных предварительных выпусков и , подпишитесь на , опубликованный вместо , выпущенного и , предварительно выпущенного .

    статус

    Запускает рабочий процесс в любое время, когда изменяется статус фиксации Git, что вызывает событие status . Для получения информации о REST API см. Статусы.

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

    906 906 по умолчанию 9042 904 904 904 904 по умолчанию фиксация n / a
    Полезная нагрузка события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
    статус

    Например, вы можете запустить рабочий процесс при возникновении события status .

      по:
      положение дел
      

    часы

    Запускает рабочий процесс каждый раз, когда происходит событие смотреть .Это событие запускается более чем одним типом активности. Для получения информации о REST API см. «Пометка».

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

    904 904 904 904 902 904 Последняя ветка по умолчанию
    Полезная нагрузка события Webhook Типы действий GITHUB_SHA GITHUB_REF
    часы запущены по умолчанию - 909

    По умолчанию все типы действий запускают рабочий процесс.Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Например, вы можете запустить рабочий процесс, когда кто-то пометит репозиторий, который представляет собой тип активности запущен , который запускает событие наблюдения.

      по:
      смотреть:
        типы: [начаты]
      

    workflow_run

    Это событие происходит при запросе или завершении выполнения рабочего процесса и позволяет выполнить рабочий процесс на основе готового результата другого рабочего процесса.Запуск рабочего процесса запускается независимо от результата предыдущего рабочего процесса.

    Например, если ваш рабочий процесс pull_request генерирует артефакты сборки, вы можете создать новый рабочий процесс, который использует workflow_run для анализа результатов и добавления комментария к исходному запросу на вытягивание.

    Рабочий процесс, запущенный событием workflow_run , может получить доступ к секретам и записать токены, даже если в предыдущем рабочем процессе этого не было. Это полезно в случаях, когда предыдущий рабочий процесс намеренно не является привилегированным, но вам нужно выполнить привилегированное действие в более позднем рабочем процессе.

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

    209 9042 9042 9042 запрошенная ветвь по умолчанию 209 904 Ветвь по умолчанию
    Полезная нагрузка события веб-перехватчика Типы действий GITHUB_SHA GITHUB_REF
    workflow_run - запрошенная ветвь по умолчанию

    По умолчанию все типы действий запускают рабочий процесс.Вы можете ограничить выполнение рабочего процесса определенными типами действий, используя ключевое слово types . Дополнительные сведения см. В разделе «Синтаксис рабочего процесса для действий GitHub».

    Если вам нужно отфильтровать ветви от этого события, вы можете использовать веток, или ветвей, игнорируя .

    В этом примере рабочий процесс настроен для запуска после завершения отдельного рабочего процесса «Выполнить тесты».

      по:
      workflow_run:
        рабочие процессы: ["Выполнить тесты"]
        ветки: [главная]
        типы:
          - завершенный
          - просил
      

    Для выполнения задания рабочего процесса, условно основанного на результате предыдущего выполнения рабочего процесса, можно использовать задания . .if или jobs. .steps [*]. if conditional в сочетании с завершением предыдущего запуска. Например:

      по:
      workflow_run:
        рабочие процессы: ["Сборка"]
        типы: [завершено]
    
    вакансии:
      при успехе:
        работает: ubuntu-latest
        если: $ {{github.event.workflow_run.conclusion == 'success'}}
        шаги:
          ...
      при отказе:
        работает: ubuntu-latest
        если: $ {{github.event.workflow_run.conclusion == 'failure'}}
        шаги:
          ...
      

    Запуск новых рабочих процессов с использованием токена личного доступа

    Когда вы используете репозиторий GITHUB_TOKEN для выполнения задач от имени приложения GitHub Actions, события, запускаемые GITHUB_TOKEN , не создают новый запуск рабочего процесса. Это предотвращает случайное создание рекурсивных запусков рабочего процесса. Например, если запуск рабочего процесса подталкивает код с использованием репозитория GITHUB_TOKEN , новый рабочий процесс не будет запущен, даже если репозиторий содержит рабочий процесс, настроенный для запуска при возникновении событий push .Для получения дополнительной информации см. «Аутентификация с помощью GITHUB_TOKEN».

    Если вы хотите запустить рабочий процесс из выполнения рабочего процесса, вы можете инициировать событие, используя личный токен доступа. Вам нужно будет создать личный токен доступа и сохранить его в секрете. Чтобы минимизировать затраты на использование GitHub Actions, убедитесь, что вы не создаете рекурсивных или непреднамеренных запусков рабочего процесса. Дополнительные сведения о хранении токена личного доступа в качестве секрета см. В разделе «Создание и хранение зашифрованных секретов».

    Синтаксис рабочего процесса для действий GitHub

    О синтаксисе YAML для рабочих процессов

    Файлы рабочего процесса используют синтаксис YAML и должны иметь либо .yml или . Расширение файла .yaml . Если вы новичок в YAML и хотите узнать больше, см. «Изучите YAML за Y минут».

    Файлы рабочего процесса необходимо хранить в каталоге .github / workflows вашего репозитория.

    наименование

    Имя вашего рабочего процесса. GitHub отображает названия ваших рабочих процессов на странице действий вашего репозитория. Если вы опустите , имя , GitHub установит для него путь к файлу рабочего процесса относительно корня репозитория.

    по

    Обязательно . Имя события GitHub, запускающего рабочий процесс. Вы можете предоставить одну строку события , массив событий , массив событий типов или карту конфигурации событий , которая планирует рабочий процесс или ограничивает выполнение рабочего процесса определенными файлами, тегами или ветка меняется. Список доступных событий см. В разделе «События, запускающие рабочие процессы».

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

     
    на: нажмите
      

    Пример: использование списка событий

     
    на: [push, pull_request]
      

    Пример: использование нескольких событий с типами действий или конфигурацией

    Если вам нужно указать типы активности или конфигурацию для события, вы должны настроить каждое событие отдельно.Вы должны добавить двоеточие (: ) ко всем событиям, включая события без конфигурации.

      по:
      
      
      толкать:
        ветви:
          - главный
      pull_request:
        ветви:
          - главный
      
      page_build:
      выпускать:
        типы:
          - созданный
      

    на. .types

    Выбирает типы действий, при которых запускается рабочий процесс. Большинство событий GitHub запускаются более чем одним типом активности. Например, событие для ресурса выпуска запускается, когда выпуск опубликован , неопубликован , создан , отредактирован , удален или предварительно выпущен .Ключевое слово types позволяет сузить круг действий, вызывающих выполнение рабочего процесса. Когда только один тип активности вызывает событие веб-перехватчика, ключевое слово types не требуется.

    Вы можете использовать массив событий типов . Дополнительные сведения о каждом событии и типах их действий см. В разделе «События, запускающие рабочие процессы».

     
    на:
      выпускать:
        
        типы: [опубликовано, создано, отредактировано]
      

    При использовании событий push и pull_request вы можете настроить рабочий процесс для запуска в определенных ветвях или тегах.Для события pull_request оцениваются только ветки и теги на базе. Если вы определите только теги или только веток , рабочий процесс не будет запускаться для событий, влияющих на неопределенную ссылку Git.

    Ветви Ветви , - игнорировать теги , Теги и - игнорировать Ключевые слова принимают шаблоны глобусов, которые используют такие символы, как * , ** , + , ? , ! и другие, чтобы соответствовать более чем одной ветке или имени тега.Если имя содержит любой из этих символов и вы хотите буквальное совпадение, вам нужно экранировать каждого из этих специальных символов с помощью \ . Дополнительные сведения о шаблонах глобусов см. В «Памятке по шаблонам фильтров».

    Пример: включение веток и тегов

    Шаблоны, определенные в ветвях и тегах , сравниваются с именем ссылки Git. Например, определение шаблона mona / octocat в ветвях будет соответствовать refs / Heads / mona / octocat Git ref.Шаблон Release / ** будет соответствовать шаблону refs / Heads / Release / 10 Git ref.

      по:
      толкать:
        
        ветви:
          
          - главный
          
          - 'мона / октокат'
          
          - 'релизы / **'
        
        теги:
          - v1
          - v1. *
      

    Пример: игнорирование ветвей и тегов

    Каждый раз, когда шаблон соответствует ветвям - игнорировать теги или - игнорировать шаблон , рабочий процесс не будет запущен.Шаблоны, определенные в ветвях - игнорировать теги и - игнорировать , оцениваются по имени ссылки Git. Например, определение шаблона mona / octocat в ветвях будет соответствовать refs / Heads / mona / octocat Git ref. Шаблон Release / ** - alpha в ветках будет соответствовать refs / Release / beta / 3-alpha Git ref.

      по:
      толкать:
        
        ветви игнорировать:
          
          - 'мона / октокат'
          
          - 'релизы / ** - альфа'
        
        теги игнорировать:
          - v1.*
      

    Без учета ветвей и тегов

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

    • ветвей или веток - игнорировать - нельзя использовать обе ветви и ветки - игнорировать фильтры для одного и того же события в рабочем процессе. Используйте фильтр ветвей , когда вам нужно отфильтровать ветви на предмет положительных совпадений и исключить ветви.Используйте фильтр branch-ignore , когда вам нужно только исключить имена ветвей.
    • Теги Теги или - игнорировать - нельзя использовать одновременно теги , теги и игнорировать фильтры для одного и того же события в рабочем процессе. Используйте фильтр теги , когда вам нужно отфильтровать теги на предмет положительных совпадений и исключить теги. Используйте фильтр теги-игнорировать , когда вам нужно только исключить имена тегов.

    Пример: использование положительных и отрицательных шаблонов

    Вы можете исключить тегов и веток с помощью ! персонаж.Порядок, в котором вы определяете шаблоны, имеет значение.

    • Соответствующий отрицательный шаблон (с префиксом ! ) после положительного совпадения исключает ссылку Git.
    • Соответствующий положительный шаблон после отрицательного совпадения снова будет включать ссылку Git.

    Следующий рабочий процесс будет выполняться при отправке версий /10 выпусков или / beta / mona , но не для выпусков / выпусков 10-alpha или / beta / 3-alpha , потому что отрицательный шаблон ! Release / ** - альфа следует положительной модели.

      по:
      толкать:
        ветви:
          - 'релизы / **'
          - '! Release / ** - alpha'
      

    на. .paths

    При использовании событий push и pull_request можно настроить рабочий процесс для запуска, когда хотя бы один файл не соответствует путям - игнорируйте или хотя бы один измененный файл соответствует настроенным путям . Фильтры пути не оцениваются для нажатия на теги.

    Пути игнорируют пути и Ключевые слова принимают шаблоны глобусов, в которых используются подстановочные знаки * и ** для соответствия более чем одному имени пути.Для получения дополнительной информации см. «Памятку по шаблону фильтра».

    Пример: игнорирование путей

    Когда все имена путей соответствуют шаблонам в путях - игнорируют , рабочий процесс не будет запущен. GitHub оценивает шаблоны, определенные в путях, игнорируя , по имени пути. Рабочий процесс со следующим фильтром пути будет выполняться только для событий push , которые включают как минимум один файл за пределами каталога docs в корне репозитория.

      по:
      толкать:
        пути-игнорировать:
          - 'документы / **'
      

    Пример: включение путей

    Если хотя бы один путь соответствует шаблону в фильтре путей , рабочий процесс выполняется.Чтобы запускать сборку в любое время, когда вы отправляете файл JavaScript, вы можете использовать шаблон подстановки.

      по:
      толкать:
        пути:
          - '**. js'
      

    Исключение путей

    Вы можете исключить пути, используя два типа фильтров. Вы не можете использовать оба этих фильтра для одного и того же события в рабочем процессе.

    • игнорирование путей - используйте фильтр игнорирование путей , когда вам нужно только исключить имена путей.
    • путей - используйте фильтр путей , когда вам нужно отфильтровать пути на предмет положительных совпадений и исключить пути.

    Пример: использование положительных и отрицательных шаблонов

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

    • Соответствующий отрицательный шаблон (с префиксом ! ) после положительного совпадения исключает путь.
    • Соответствующий положительный образец после отрицательного совпадения снова будет включать путь.

    Этот пример запускается каждый раз, когда событие push включает файл в каталоге подпроекта или его подкаталогах, если только файл не находится в каталоге sub-project / docs .Например, push, который изменил подпроект / index.js или sub-project / src / index.js , вызовет запуск рабочего процесса, но push изменит только подпроект / docs / readme.md не буду.

      по:
      толкать:
        пути:
          - 'подпроект / **'
          - '! sub-project / docs / **'
      

    Git diff сравнения

    Примечание: Если вы нажимаете более 1000 коммитов или если GitHub не генерирует различие из-за тайм-аута, рабочий процесс всегда будет выполняться.

    Фильтр определяет, следует ли запускать рабочий процесс, оценивая измененные файлы и запуская их по пути - игнорируя пути или пути . Если файлы не изменены, рабочий процесс не запустится.

    GitHub генерирует список измененных файлов, используя различия с двумя точками для нажатий и трехточечные различия для запросов на вытягивание:

    • Запросы на извлечение: Различия с тремя точками - это сравнение между самой последней версией ветки темы и фиксацией, в которой ветка темы последний раз была синхронизирована с базовой ветвью.
    • Подталкивает к существующим ветвям: Двухточечный дифференциал сравнивает головной и базовый SHA напрямую друг с другом.
    • Отправляет в новые ветки: Разница в две точки по отношению к родительскому элементу предка самой глубокой нажатой фиксации.

    Различия ограничены 300 файлами. Если есть измененные файлы, которые не соответствуют первым 300 файлам, возвращаемым фильтром, рабочий процесс не будет запущен. Возможно, вам потребуется создать более конкретные фильтры, чтобы рабочий процесс запускался автоматически.

    Дополнительные сведения см. В разделе «Сравнение ветвей в запросах на вытягивание».

    on.workflow_call.inputs

    При использовании ключевого слова workflow_call можно дополнительно указать входные данные, которые передаются в вызываемый рабочий процесс из рабочего процесса вызывающего. Входные данные для многоразовых рабочих процессов указываются в том же формате, что и входные данные действий. Дополнительные сведения о входных данных см. В разделе «Синтаксис метаданных для действий GitHub». Дополнительные сведения о ключевом слове workflow_call см. В разделе «События, запускающие рабочие процессы.«

    В дополнение к стандартным входным параметрам, которые доступны, on.workflow_call.inputs требует параметра типа . Для получения дополнительной информации см. on.workflow_call. .type .

    Если параметр по умолчанию не задан, значение по умолчанию для входа - false для логического значения, 0 для числа и "" для строки.

    Внутри вызываемого рабочего процесса вы можете использовать контекст входов для ссылки на вход.

    Если рабочий процесс вызывающего абонента передает ввод, который не указан в вызываемом рабочем процессе, это приводит к ошибке.

    Пример

      по:
      workflow_call:
        входы:
          имя пользователя:
            description: 'Имя пользователя, переданное из рабочего процесса вызывающего абонента'
            по умолчанию: 'john-doe'
            требуется: ложь
            тип: строка
      
    вакансии:
      print-username:
        работает: ubuntu-latest
    
        шаги:
          - name: распечатать имя входа в STDOUT
            run: echo Имя пользователя - $ {{inputs.имя пользователя }}
      

    Для получения дополнительной информации см. «Повторное использование рабочих процессов».

    on.workflow_call. .type

    Требуется, если ввод задан для ключевого слова on.workflow_call . Значение этого параметра - строка, определяющая тип данных ввода. Это должно быть одно из следующих значений: логическое , число или строка .

    on.workflow_call.secrets

    Карта секретов, которые можно использовать в вызванном рабочем процессе.

    Внутри вызываемого рабочего процесса вы можете использовать контекст секретов для ссылки на секрет.

    Если рабочий процесс вызывающего абонента передает секрет, который не указан в вызываемом рабочем процессе, это приводит к ошибке.

    Пример

      по:
      workflow_call:
        секреты:
          токен доступа:
            description: 'Токен передан из рабочего процесса вызывающего абонента'
            требуется: ложь
      
    вакансии:
      пароль-секрет-к-действию:
        работает: ubuntu-latest
    
        шаги:
          - name: передать полученный секрет в действие
            использует:./.github/actions/my-action@v1
            с участием:
              токен: $ {{secrets.access-token}}
      

    on.workflow_call.secrets.

    Строковый идентификатор, связанный с секретом.

    on.workflow_call.secrets. .required

    Логическое значение, указывающее, должен ли предоставляться секрет.

    on.workflow_dispatch.inputs

    При использовании события workflow_dispatch можно дополнительно указать входные данные, которые передаются в рабочий процесс.Входные данные диспетчеризации рабочего процесса указываются в том же формате, что и входные данные действий. Дополнительные сведения о формате см. В разделе «Синтаксис метаданных для действий GitHub».

      по:
      workflow_dispatch:
        входы:
          logLevel:
            описание: 'Уровень журнала'
            требуется: правда
            по умолчанию: 'предупреждение'
          теги:
            description: 'Теги тестового сценария'
            требуется: ложь
      

    Запущенный рабочий процесс получает входные данные в контексте github.event.inputs .Для получения дополнительной информации см. «Контексты».

    по графику

    Вы можете запланировать запуск рабочего процесса в определенное время в формате UTC, используя синтаксис POSIX cron. Запланированные рабочие процессы выполняются на последней фиксации в стандартной или базовой ветке. Самый короткий интервал, в котором вы можете запускать запланированные рабочие процессы, - один раз в 5 минут.

    В этом примере рабочий процесс запускается каждый день в 5:30 и 17:30 UTC:

      по:
      расписание:
        
        - cron: '30 5,17 * * * '
    
      

    Дополнительные сведения о синтаксисе cron см. В разделе «События, запускающие рабочие процессы.«

    разрешения

    Вы можете изменить разрешения по умолчанию, предоставленные GITHUB_TOKEN , добавляя или удаляя доступ по мере необходимости, так что вы разрешаете только минимально необходимый доступ. Для получения дополнительной информации см. «Аутентификация в рабочем процессе».

    Вы можете использовать разрешения либо как ключ верхнего уровня, чтобы применить ко всем заданиям в рабочем процессе или в пределах определенных заданий. Когда вы добавляете ключ разрешений в конкретное задание, все действия и запускаемые команды в этом задании, использующие GITHUB_TOKEN , получают указанные вами права доступа.Для получения дополнительной информации см. Задания . .permissions .

    Доступные области и значения доступа:

      разрешений:
      действия: чтение | запись | нет
      проверки: чтение | запись | нет
      содержимое: читать | писать | нет
      развертывания: чтение | запись | нет
      id_token: чтение | запись | нет
      проблемы: читать | писать | нет
      обсуждения: читать | писать | нет
      пакеты: чтение | запись | нет
      запросы на вытягивание: чтение | запись | нет
      репозиторий-проекты: читать | писать | нет
      события безопасности: чтение | запись | нет
      статусы: чтение | запись | нет
      

    Если вы укажете доступ для любой из этих областей, все не указанные области будут иметь значение нет .

    Вы можете использовать следующий синтаксис для определения доступа для чтения или записи для всех доступных областей:

      разрешения: все для чтения | все для записи
      

    Вы можете использовать ключ permissions для добавления и удаления разрешений на чтение для разветвленных репозиториев, но обычно вы не можете предоставить доступ на запись. Исключением из этого поведения является то, когда пользователь-администратор выбрал Отправлять токены записи в рабочие процессы из опций запросов на вытягивание в настройках действий GitHub.Дополнительные сведения см. В разделе «Управление настройками действий GitHub для репозитория».

    Пример

    В этом примере показаны разрешения, устанавливаемые для GITHUB_TOKEN , которые будут применяться ко всем заданиям в рабочем процессе. Всем разрешениям предоставляется доступ для чтения.

      имя: «Мой рабочий процесс»
    
    on: [push]
    
    разрешения: читать все
    
    вакансии:
      ...
      

    ок.

    Отображение переменных среды, доступных для шагов всех заданий в рабочем процессе.Вы также можете установить переменные среды, которые доступны только для шагов одного задания или для одного шага. Для получения дополнительной информации см. Задания . .env и задания. .steps [*]. Env .

    Если с одним именем определено несколько переменных среды, GitHub использует наиболее конкретную переменную среды. Например, переменная среды, определенная на шаге, переопределит переменные задания и рабочего процесса с тем же именем, пока шаг выполняется.Переменная, определенная для задания, переопределит переменную рабочего процесса с тем же именем, пока задание выполняется.

    Пример

      ок .:
      СЕРВЕР: производство
      

    по умолчанию

    Карта настроек по умолчанию, которые будут применяться ко всем заданиям в рабочем процессе. Вы также можете установить настройки по умолчанию, которые доступны только для работы. Для получения дополнительной информации см. Задания . .defaults .

    Если с одним именем определено несколько параметров по умолчанию, GitHub использует наиболее конкретные параметры по умолчанию.Например, параметр по умолчанию, определенный в задании, переопределит параметр по умолчанию, имя которого указано в рабочем процессе.

    defaults.run

    Вы можете предоставить по умолчанию shell и параметры рабочего каталога для всех выполнить шаг в рабочем процессе. Вы также можете установить настройки по умолчанию для запустить , которые доступны только для задания. Для получения дополнительной информации см. заданий. .defaults.run . В этом ключевом слове нельзя использовать контексты или выражения.

    Если с одним именем определено несколько параметров по умолчанию, GitHub использует наиболее конкретные параметры по умолчанию. Например, параметр по умолчанию, определенный в задании, переопределит параметр по умолчанию, имя которого указано в рабочем процессе.

    Пример

      по умолчанию:
      запустить:
        оболочка: bash
        рабочий каталог: скрипты
      

    параллелизм

    Параллелизм гарантирует, что одновременно будет выполняться только одно задание или рабочий процесс, использующие одну и ту же группу параллелизма.Группа параллелизма может быть любой строкой или выражением. Выражение может использовать только контекст github . Для получения дополнительной информации о выражениях см. «Выражения».

    Вы также можете указать параллелизм на уровне задания. Для получения дополнительной информации см. Задания . .concurrency .

    Когда параллельное задание или рабочий процесс помещается в очередь, если другое задание или рабочий процесс, использующие ту же группу параллелизма в репозитории, находятся в процессе, поставленное в очередь задание или рабочий процесс будет ожидающим .Любое ранее отложенное задание или рабочий процесс в группе параллелизма будет отменено. Чтобы также отменить любое текущее задание или рабочий процесс в той же группе параллелизма, укажите cancel-in-progress: true .

    Примеры: использование параллелизма и поведение по умолчанию

      параллелизм: staging_environment
      
      параллелизм: ci - $ {{github.ref}}
      

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

      параллелизм:
      группа: $ {{github.head_ref}}
      в процессе отмены: true
      

    вакансий

    Запуск рабочего процесса состоит из одного или нескольких заданий. По умолчанию задания выполняются параллельно. Для последовательного выполнения заданий вы можете определить зависимости от других заданий с помощью ключевого слова jobs. .needs .

    Каждое задание выполняется в среде выполнения, указанной параметром running-on .

    Вы можете запускать неограниченное количество заданий, пока не выходите за пределы рабочего процесса. Дополнительные сведения см. В разделах «Ограничения на использование и выставление счетов» для бегунов, размещенных на GitHub, и «О самодостаточных бегунах», где указаны ограничения на использование саморазмещаемых бегунов.

    Если вам нужно найти уникальный идентификатор задания, выполняемого в рабочем процессе, вы можете использовать GitHub API. Для получения дополнительной информации см. «Задания рабочего процесса».

    вакансий.

    Создайте идентификатор для своей работы, присвоив ей уникальное имя. Ключ job_id представляет собой строку, а его значение представляет собой карту данных конфигурации задания. Вы должны заменить на строку, уникальную для объекта jobs jobs. должен начинаться с буквы или _ и содержать только буквенно-цифровые символы, или _ .

    Пример

    В этом примере были созданы два задания, и их значения job_id : my_first_job и my_second_job .

      вакансий:
      my_first_job:
        имя: Моя первая работа
      my_second_job:
        имя: Моя вторая работа
      

    вакансий. .name

    Имя задания, отображаемое на GitHub.

    вакансий. .needs

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

    Пример: Требование успешного выполнения зависимых заданий

      вакансий:
      job1:
      job2:
        потребности: job1
      job3:
        потребности: [работа1, работа2]
      

    В этом примере задание1 должно быть успешно завершено до того, как задание2 начнется, а задание3 ожидает завершения как задание1, , так и задание2 .

    Задания в этом примере выполняются последовательно:

    1. job1
    2. работа2
    3. job3

    Пример: не требуется, чтобы зависимые задания были успешными

      вакансий:
      job1:
      job2:
        потребности: job1
      job3:
        если: $ {{всегда ()}}
        потребности: [работа1, работа2]
      

    В этом примере job3 использует условное выражение always () , поэтому оно всегда выполняется после завершения job1 и job2 , независимо от того, были ли они успешными.Для получения дополнительной информации см. «Выражения».

    вакансий. .runs-on

    Обязательно . Тип машины, на которой будет выполняться задание. Машина может быть бегуном, размещенным на GitHub, или самодостаточным.

    Бегуны, размещенные на GitHub

    Если вы используете бегун, размещенный на GitHub, каждое задание запускается в новом экземпляре виртуальной среды, заданной параметром running-on .

    Доступные типы бегунов, размещенных на GitHub:

    Виртуальная среда Ярлык рабочего процесса YAML Примечания
    Windows Server 2022 [бета] окна-2022 На этикетке windows-latest в настоящее время используется образ бегуна Windows Server 2019.
    Windows Server 2019 windows-последняя версия или windows-2019
    Windows Server 2016 [устарело] окна-2016 Выполните миграцию на Windows 2019 или Windows 2022. Дополнительные сведения см. В записи блога.
    Ubuntu 20.04 ubuntu-последняя версия или ubuntu-20.04
    Ubuntu 18.04 убунту-18.04
    macOS Big Sur 11 macos-11 Наклейка macos-latest в настоящее время использует образ бегуна macOS 10.15.
    macOS Catalina 10.15 macos-последняя версия или macos-10.15

    Примечание. Образы бета и устаревшие предоставляются «как есть», «со всеми неисправностями» и «по мере доступности» и исключаются из соглашения об уровне обслуживания и гарантии.Бета-изображения могут не подпадать под действие службы поддержки.

    Пример
      запускается: ubuntu-latest
      

    Дополнительные сведения см. В разделе «Виртуальные среды для бегунов, размещенных на GitHub».

    Самостоятельные бегуны

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

    Все бегуны, работающие самостоятельно, имеют метку , размещенную на собственном хостинге, . Использование только этого ярлыка позволит выбрать любого бегуна, размещенного на собственном хостинге.Чтобы выбрать бегунов, которые соответствуют определенным критериям, таким как операционная система или архитектура, предоставьте массив меток, который начинается с , саморазмещенный (он должен быть указан первым), а затем включает дополнительные метки по мере необходимости.

    Пример
     Обкатка : [самостоятельно, Linux]
      

    Дополнительные сведения см. В разделах «О самостоятельных бегунах» и «Использование автономных бегунов в рабочем процессе».

    вакансий. .permissions

    Вы можете изменить разрешения по умолчанию, предоставленные GITHUB_TOKEN , добавляя или удаляя доступ по мере необходимости, так что вы разрешаете только минимально необходимый доступ.Для получения дополнительной информации см. «Аутентификация в рабочем процессе».

    Указав разрешение в определении задания, вы можете настроить другой набор разрешений для GITHUB_TOKEN для каждого задания, если это необходимо. Кроме того, вы можете указать разрешения для всех заданий в рабочем процессе. Для получения информации об определении разрешений на уровне рабочего процесса см. разрешения .

    Доступные области и значения доступа:

      разрешений:
      действия: чтение | запись | нет
      проверки: чтение | запись | нет
      содержимое: читать | писать | нет
      развертывания: чтение | запись | нет
      id_token: чтение | запись | нет
      проблемы: читать | писать | нет
      обсуждения: читать | писать | нет
      пакеты: чтение | запись | нет
      запросы на вытягивание: чтение | запись | нет
      репозиторий-проекты: читать | писать | нет
      события безопасности: чтение | запись | нет
      статусы: чтение | запись | нет
      

    Если вы укажете доступ для любой из этих областей, все не указанные области будут иметь значение нет .

    Вы можете использовать следующий синтаксис для определения доступа для чтения или записи для всех доступных областей:

      разрешения: все для чтения | все для записи
      

    Вы можете использовать ключ permissions для добавления и удаления разрешений на чтение для разветвленных репозиториев, но обычно вы не можете предоставить доступ на запись. Исключением из этого поведения является то, когда пользователь-администратор выбрал Отправлять токены записи в рабочие процессы из опций запросов на вытягивание в настройках действий GitHub.Дополнительные сведения см. В разделе «Управление настройками действий GitHub для репозитория».

    Пример

    В этом примере показаны разрешения, устанавливаемые для GITHUB_TOKEN , которые будут применяться только к заданию с именем stale . Доступ для записи предоставляется для областей , и запросов на вытягивание, областей. Все остальные области не будут иметь доступа.

      вакансий:
      несвежий:
        работает: ubuntu-latest
    
        разрешения:
          вопросы: написать
          pull-запросы: написать
    
        шаги:
          - использует: actions / stale @ v3
      

    вакансий. .environment

    Среда, на которую ссылается задание. Все правила защиты среды должны пройти, прежде чем задание, ссылающееся на среду, будет отправлено исполнителю. Для получения дополнительной информации см. «Использование сред для развертывания».

    Вы можете указать среду только как среду с именем или как объект среды с именем и URL-адресом . URL-адрес соответствует environment_url в API развертывания. Дополнительные сведения об API развертывания см. В разделе «Развертывания.«

    Пример использования одного имени среды
      среда: staging_environment
      
    Пример использования имени среды и URL-адреса
      среда:
      имя: production_environment
      URL: https://github.com
      

    URL-адрес может быть выражением и может использовать любой контекст, кроме контекста секретов и контекста . Для получения дополнительной информации о выражениях см. «Выражения».

    Пример

      среда:
      имя: production_environment
      url: $ {{шаги.step_id.outputs.url_output}}
      

    вакансий. .concurrency

    Примечание: Когда параллелизм задан на уровне задания, порядок не гарантируется для заданий или запускает эту очередь в пределах 5 минут друг от друга.

    Параллелизм гарантирует, что одновременно будет выполняться только одно задание или рабочий процесс, использующие одну и ту же группу параллелизма. Группа параллелизма может быть любой строкой или выражением. Выражение может использовать любой контекст, кроме контекста секретов .Для получения дополнительной информации о выражениях см. «Выражения».

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

    Когда параллельное задание или рабочий процесс помещается в очередь, если другое задание или рабочий процесс, использующие ту же группу параллелизма в репозитории, находятся в процессе, поставленное в очередь задание или рабочий процесс будет ожидающим . Любое ранее отложенное задание или рабочий процесс в группе параллелизма будет отменено. Чтобы также отменить любое текущее задание или рабочий процесс в той же группе параллелизма, укажите cancel-in-progress: true .

    Примеры: использование параллелизма и поведение по умолчанию

      параллелизм: staging_environment
      
      параллелизм: ci - $ {{github.ref}}
      

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

      параллелизм:
      группа: $ {{github.head_ref}}
      в процессе отмены: true
      

    вакансий. .outputs

    Отображение выходных данных для задания. Выходы задания доступны для всех последующих заданий, которые зависят от этого задания.Для получения дополнительной информации об определении зависимостей заданий см. Задания . . Требуется .

    Выходные данные задания представляют собой строки, а выходные данные задания, содержащие выражения, оцениваются на бегунке в конце каждого задания. Выходные данные, содержащие секреты, редактируются в средстве выполнения и не отправляются в GitHub Actions.

    Чтобы использовать выходные данные задания в зависимом задании, вы можете использовать контекст , требующий . Для получения дополнительной информации см. «Контексты».

    Пример

      вакансий:
      job1:
        работает: ubuntu-latest
        
        выходы:
          output1: $ {{шаги.step1.outputs.test}}
          output2: $ {{steps.step2.outputs.test}}
        шаги:
          - id: step1
            запустить: echo ":: set-output name = test :: hello"
          - id: step2
            запустить: echo ":: set-output name = test :: world"
      job2:
        работает: ubuntu-latest
        потребности: job1
        шаги:
          - запустить: echo $ {{needs.job1.outputs.output1}} $ {{needs.job1.outputs.output2}}
      

    вакансий. .env

    Карта переменных среды, доступных на всех этапах задания.Вы также можете установить переменные среды для всего рабочего процесса или отдельного шага. Для получения дополнительной информации см. Задания env и . .steps [*]. Env .

    Если с одним именем определено несколько переменных среды, GitHub использует наиболее конкретную переменную среды. Например, переменная среды, определенная на шаге, переопределит переменные задания и рабочего процесса с тем же именем, пока шаг выполняется. Переменная, определенная для задания, переопределит переменную рабочего процесса с тем же именем, пока задание выполняется.

    Пример

      вакансий:
      job1:
        env:
          FIRST_NAME: Мона
      

    вакансий. .defaults

    Карта настроек по умолчанию, которые будут применяться ко всем этапам задания. Вы также можете установить настройки по умолчанию для всего рабочего процесса. Для получения дополнительной информации см. по умолчанию .

    Если с одним именем определено несколько параметров по умолчанию, GitHub использует наиболее конкретные параметры по умолчанию. Например, параметр по умолчанию, определенный в задании, переопределит параметр по умолчанию, имя которого указано в рабочем процессе.

    вакансий. .defaults.run

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

    Вы можете предоставить по умолчанию shell и параметры рабочего каталога для всех выполнить шаг в задании. Вы также можете установить настройки по умолчанию для запустить для всего рабочего процесса. Для получения дополнительной информации см. заданий.defaults. запустите . В этом ключевом слове нельзя использовать контексты или выражения.

    Если с одним именем определено несколько параметров по умолчанию, GitHub использует наиболее конкретные параметры по умолчанию. Например, параметр по умолчанию, определенный в задании, переопределит параметр по умолчанию, имя которого указано в рабочем процессе.

    Пример

      вакансий:
      job1:
        работает: ubuntu-latest
        значения по умолчанию:
          запустить:
            оболочка: bash
            рабочий каталог: скрипты
      

    вакансий. .if

    Вы можете использовать if conditional, чтобы запретить выполнение задания, если не выполнено условие. Вы можете использовать любой поддерживаемый контекст и выражение для создания условного выражения.

    Когда вы используете выражения в условном выражении if , вы можете опустить синтаксис выражения ( $ {{}} ), потому что GitHub автоматически оценивает условное if как выражение. Для получения дополнительной информации см. «Выражения».

    вакансий. .steps

    Задание содержит последовательность задач, называемых шагами . Шаги могут запускать команды, запускать задачи установки или запускать действие в вашем репозитории, общедоступном репозитории или действие, опубликованное в реестре Docker. Не все шаги запускают действия, но все действия выполняются как шаг. Каждый шаг выполняется в своем собственном процессе в среде бегуна и имеет доступ к рабочей области и файловой системе. Поскольку шаги выполняются в собственном процессе, изменения переменных среды не сохраняются между шагами.GitHub предоставляет встроенные пошаговые инструкции по настройке и выполнению задания.

    Вы можете выполнять неограниченное количество шагов, пока не выходите за пределы рабочего процесса. Дополнительные сведения см. В разделах «Ограничения на использование и выставление счетов» для бегунов, размещенных на GitHub, и «О самодостаточных бегунах», где указаны ограничения на использование саморазмещаемых бегунов.

    Пример

      имя: Приветствие от Моны
    
    на: нажмите
    
    вакансии:
      моя работа:
        имя: Моя работа
        работает: ubuntu-latest
        шаги:
          - name: распечатать приветствие.
            env:
              MY_VAR: Привет! Меня зовут
              FIRST_NAME: Мона
              MIDDLE_NAME:
              LAST_NAME: Octocat
            запустить: |
              echo $ MY_VAR $ FIRST_NAME $ MIDDLE_NAME $ LAST_NAME. 

    вакансий. .steps [*]. Id

    Уникальный идентификатор шага. Вы можете использовать id для ссылки на шаг в контексте. Для получения дополнительной информации см. «Контексты».

    вакансий. .steps [*]. If

    Вы можете использовать при условии , чтобы предотвратить выполнение шага, если не выполнено условие. Вы можете использовать любой поддерживаемый контекст и выражение для создания условного выражения.

    Когда вы используете выражения в условном выражении if , вы можете опустить синтаксис выражения ( $ {{}} ), потому что GitHub автоматически оценивает условное if как выражение.Для получения дополнительной информации см. «Выражения».

    Пример: использование контекстов

    Этот шаг выполняется, только если тип события - pull_request , а действие события - неназначенный .

      шагов:
     - имя: Мой первый шаг
       если: $ {{github.event_name == 'pull_request' && github.event.action == 'unassigned'}}
       run: echo Это событие представляет собой запрос на вытягивание, из которого был удален исполнитель.
      

    Пример: использование функций проверки статуса

    Мой шаг резервного копирования запускается только в случае сбоя предыдущего шага задания.Для получения дополнительной информации см. «Выражения».

      шагов:
      - имя: Мой первый шаг
        использует: octo-org / action-name @ main
      - name: Мой резервный шаг
        если: $ {{отказ ()}}
        использует: actions/[email protected]
      

    вакансий. .steps [*]. Name

    Имя вашего шага, отображаемого на GitHub.

    заданий. .steps [*]. Использует

    Выбирает действие, которое будет выполняться как часть шага вашего задания. Действие - это многократно используемая единица кода.Вы можете использовать действие, определенное в том же репозитории, что и рабочий процесс, в общедоступном репозитории или в опубликованном образе контейнера Docker.

    Мы настоятельно рекомендуем указать версию используемого действия, указав номер тега Git ref, SHA или Docker. Если вы не укажете версию, это может нарушить ваши рабочие процессы или вызвать непредвиденное поведение, когда владелец действия публикует обновление.

    • Использование SHA фиксации выпущенной версии действия является самым безопасным с точки зрения стабильности и безопасности.
    • Использование конкретной версии основного действия позволяет получать критические исправления и исправления безопасности, сохраняя при этом совместимость. Это также гарантирует, что ваш рабочий процесс по-прежнему будет работать.
    • Использование ветки действия по умолчанию может быть удобным, но если кто-то выпустит новую основную версию с критическими изменениями, ваш рабочий процесс может сломаться.

    Для некоторых действий требуются входные данные, которые необходимо установить с помощью с ключевым словом . Просмотрите файл README действия, чтобы определить необходимые входные данные.

    Действия - это файлы JavaScript или контейнеры Docker. Если действие, которое вы используете, является контейнером Docker, вы должны запустить задание в среде Linux. Для получения более подробной информации см. пробегает .

    Пример: использование версионных действий

      шагов:
      
      - использует: actions / checkout @ a81bbbf8298c0fa03ea29cdc473d45769f5
      
      - использует: actions / checkout @ v2
      
      - использует: actions/[email protected]
      
      - использует: actions / checkout @ main
      

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

    {owner} / {repo} @ {ref}

    Вы можете указать ветку, ссылку или SHA в общедоступном репозитории GitHub.

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            
            использует: actions / heroku @ main
          - имя: Мой второй шаг
            
            использует: actions/[email protected]
      

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

    {owner} / {repo} / {path} @ {ref}

    Подкаталог в общедоступном репозитории GitHub в определенной ветке, ref или SHA.

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            использует: действия / aws / ec2 @ main
      

    Пример: использование действия в том же репозитории, что и рабочий процесс

    ./ путь / к / директору

    Путь к каталогу, содержащему действие в репозитории вашего рабочего процесса. Перед использованием действия необходимо проверить свой репозиторий.

      вакансий:
      my_first_job:
        шаги:
          - имя: Проверить репозиторий
            использует: действия / оформление @ v2
          - name: использовать локальное my-action
            использует: ./.github/actions/my-action
      

    Пример: использование действия Docker Hub

    docker: // {image}: {tag}

    Образ Docker, опубликованный в Docker Hub.

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            использует: docker: // alpine: 3.8
      
    Пример: использование реестра контейнера пакетов GitHub

    docker: // {host} / {image}: {tag}

    Образ Docker в реестре контейнеров GitHub Packages.

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            использует: docker: //ghcr.io/OWNER/IMAGE_NAME
      
    Пример: использование действия общедоступного реестра Docker

    docker: // {host} / {image}: {tag}

    Образ Docker в общедоступном реестре.В этом примере используется реестр контейнеров Google по адресу gcr.io .

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            использует: docker: //gcr.io/cloud-builders/gradle
      

    Пример: использование действия внутри частного репозитория, отличного от рабочего процесса

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

    Замените PERSONAL_ACCESS_TOKEN в примере именем вашего секрета.

      вакансий:
      my_first_job:
        шаги:
          - имя: Проверить репозиторий
            использует: действия / оформление @ v2
            с участием:
              репозиторий: octocat / my-private-repo
              ссылка: v1.0
              токен: $ {{secrets.PERSONAL_ACCESS_TOKEN}}
              путь: ./.github/actions/my-private-repo
          - имя: Запустить мое действие
            использует: ./.github/actions/my-private-repo/my-action
      

    вакансий. .steps [*]. run

    Запускает программы командной строки с помощью оболочки операционной системы. Если вы не укажете имя , имя шага по умолчанию будет соответствовать тексту, указанному в команде run .

    Команды по умолчанию выполняются с использованием оболочек без входа в систему. Вы можете выбрать другую оболочку и настроить оболочку, используемую для выполнения команд. Для получения дополнительной информации см. «Использование конкретной оболочки».

    Каждое ключевое слово run представляет новый процесс и оболочку в среде runner.Когда вы предоставляете многострочные команды, каждая строка выполняется в одной оболочке. Например:

    Используя ключевое слово working-directory , вы можете указать рабочий каталог, в котором следует запускать команду.

      - имя: Очистить временную директорию
      запустить: rm -rf *
      рабочий каталог: ./temp
      

    Использование специальной оболочки

    Вы можете переопределить настройки оболочки по умолчанию в операционной системе бегуна, используя ключевое слово shell . Вы можете использовать встроенные ключевые слова оболочки или определить собственный набор параметров оболочки.Команда оболочки, выполняемая внутри, выполняет временный файл, содержащий команды, указанные в ключевом слове run .

    Поддерживаемая платформа Параметр оболочки Описание Внутренний запуск команды
    Все bash Оболочка по умолчанию на платформах, отличных от Windows, с заменой оболочки по умолчанию на платформах , отличных от Windows.При указании оболочки bash в Windows используется оболочка bash, включенная в Git для Windows. bash --noprofile --norc -eo pipefail {0}
    Все pwsh Ядро PowerShell. GitHub добавляет к имени вашего скрипта расширение .ps1 . pwsh -command ". '{0}'"
    Все python Выполняет команду python. python {0}
    Linux / macOS sh Резервное поведение для платформ, отличных от Windows, если оболочка не предоставлена ​​и bash не найден в пути. sh -e {0}
    Windows cmd GitHub добавляет расширение .cmd к имени вашего скрипта и заменяет {0} . % ComSpec% / D / E: ON / V: OFF / S / C "CALL" {0} "" .
    Windows pwsh Это оболочка по умолчанию, используемая в Windows. Ядро PowerShell. GitHub добавляет к имени вашего скрипта расширение .ps1 .Если в вашем автономном средстве выполнения Windows не установлено PowerShell Core , то вместо него используется PowerShell Desktop . pwsh -команда ". '{0}'" .
    Windows powershell Рабочий стол PowerShell. GitHub добавляет к имени вашего скрипта расширение .ps1 . powershell -команда ". '{0}'" .

    Пример: запуск сценария с использованием bash

      шагов:
      - name: отобразить путь
        запустить: echo $ PATH
        оболочка: bash
      

    Пример: запуск сценария с использованием Windows

    cmd
      шагов:
      - name: отобразить путь
        запустить: echo% PATH%
        оболочка: cmd
      

    Пример: запуск сценария с использованием PowerShell Core

      шагов:
      - name: отобразить путь
        запустить: echo $ {env: PATH}
        оболочка: pwsh
      

    Пример: использование PowerShell Desktop для запуска сценария

      шагов:
      - name: отобразить путь
        запустить: echo $ {env: PATH}
        оболочка: powershell
      

    Пример: запуск сценария Python

      шагов:
      - name: отобразить путь
        запустить: |
          импорт ОС
          печать (os.Environment ['ПУТЬ'])
        оболочка: питон
      

    Специальная оболочка

    Вы можете установить значение оболочки в строку шаблона с помощью команды [… options] {0} [..more_options] . GitHub интерпретирует первое слово строки, разделенное пробелами, как команду и вставляет имя файла для временного скрипта в {0} .

    Например:

      шагов:
      - name: отображение переменных среды и их значений.
        запустить: |
          печать% ENV
        оболочка: perl {0}
      

    Используемая команда, perl в этом примере, должна быть установлена ​​на runner.

    Для получения информации о программном обеспечении, включенном в бегуны, размещенные на GitHub, см. «Технические характеристики бегунов, размещенных на GitHub».

    Коды выхода и предпочтительные действия при ошибке

    Для встроенных ключевых слов оболочки мы предоставляем следующие значения по умолчанию, которые выполняются бегунами, размещенными на GitHub. Эти рекомендации следует использовать при запуске сценариев оболочки.

    • баш / ш :

      • Отказоустойчивое поведение с использованием набора -eo pipefail : по умолчанию для bash и встроенной оболочки .Это также значение по умолчанию, если вы не предоставляете опцию на платформах, отличных от Windows.
      • Вы можете отказаться от быстрой обработки ошибок и получить полный контроль, указав строку шаблона для параметров оболочки. Например, bash {0} .
      • sh-подобных оболочек завершается с кодом выхода последней команды, выполненной в сценарии, что также является поведением по умолчанию для действий. На основе этого кода выхода бегун сообщит о статусе шага как сбой / успех.
    • PowerShell / pwsh

      • Отказоустойчивое поведение, когда это возможно.Для встроенной оболочки pwsh и powershell мы добавим $ ErrorActionPreference = 'stop' к содержимому скрипта.
      • Мы добавляем if ((Test-Path -LiteralPath variable: \ LASTEXITCODE)) {exit $ LASTEXITCODE} в сценарии PowerShell, чтобы статусы действий отражали последний код выхода сценария.
      • Пользователи всегда могут отказаться, не используя встроенную оболочку и предоставив настраиваемую опцию оболочки, например: pwsh -File {0} или powershell -Command "& '{0}'" , в зависимости от необходимости. .
    • смд

      • Кажется, нет другого способа полностью отказаться от отказоустойчивого поведения, кроме написания сценария для проверки каждого кода ошибки и соответствующего реагирования. Поскольку на самом деле мы не можем обеспечить такое поведение по умолчанию, вам необходимо записать это поведение в свой скрипт.
      • cmd.exe завершится с уровнем ошибки последней выполненной программы и вернет код ошибки исполнителю. Это поведение внутренне согласуется с предыдущими sh и pwsh поведением по умолчанию и является cmd.exe по умолчанию, поэтому это поведение остается неизменным.

    вакансий. .steps [*]. С

    Карта , карта входных параметров, определенных действием. Каждый входной параметр представляет собой пару ключ / значение. Входные параметры задаются как переменные среды. Переменная имеет префикс INPUT_ и преобразуется в верхний регистр.

    Пример

    Определяет три входных параметра ( first_name , middle_name и last_name ), определенных действием hello_world .Эти входные переменные будут доступны для действия hello-world как переменные среды INPUT_FIRST_NAME , INPUT_MIDDLE_NAME и INPUT_LAST_NAME .

      вакансий:
      my_first_job:
        шаги:
          - имя: Мой первый шаг
            использует: действия / hello_world @ main
            с участием:
              first_name: Мона
              middle_name:
              last_name: Octocat
      

    вакансий. .steps [*]. With.args

    Строка , определяющая входные данные для контейнера Docker.GitHub передает аргументов в ENTRYPOINT контейнера при запуске контейнера. Массив строк не поддерживается этим параметром.

    Пример

      шагов:
      - name: объясните, почему это задание было выполнено
        использует: octo-org / action-name @ main
        с участием:
          точка входа: / bin / echo
          args: Событие $ {{github.event_name}} инициировало этот шаг.
      

    Аргументы используются вместо инструкции CMD в файле Dockerfile .Если вы используете CMD в своем Dockerfile , используйте инструкции, упорядоченные по предпочтениям:

    1. Задокументируйте обязательные аргументы в README действия и исключите их из инструкции CMD .
    2. Используйте значения по умолчанию, которые позволяют использовать действие без указания каких-либо аргументов .
    3. Если действие показывает флаг --help или что-то подобное, используйте его по умолчанию, чтобы сделать ваше действие самодокументированным.

    рабочих мест. .steps [*]. with.entrypoint

    Переопределяет Docker ENTRYPOINT в Dockerfile или устанавливает его, если он еще не был указан. В отличие от инструкции ENTRYPOINT Docker , которая имеет оболочку и форму exec, ключевое слово entrypoint принимает только одну строку, определяющую исполняемый файл для запуска.

    Пример

      шагов:
      - name: запустить пользовательскую команду
        использует: octo-org / action-name @ main
        с участием:
          точка входа: / a / другой / исполняемый файл
      

    Ключевое слово entrypoint предназначено для использования с действиями контейнера Docker, но вы также можете использовать его с действиями JavaScript, которые не определяют никаких входных данных.

    вакансий. .steps [*]. Env

    Устанавливает переменные среды для шагов, которые будут использоваться в среде бегуна. Вы также можете установить переменные среды для всего рабочего процесса или задания. Для получения дополнительной информации см. Задания env и . .env .

    Если с одним именем определено несколько переменных среды, GitHub использует наиболее конкретную переменную среды. Например, переменная среды, определенная на шаге, переопределит переменные задания и рабочего процесса с тем же именем, пока шаг выполняется.Переменная, определенная для задания, переопределит переменную рабочего процесса с тем же именем, пока задание выполняется.

    Общедоступные действия могут указывать ожидаемые переменные среды в файле README. Если вы устанавливаете секрет в переменной среды, вы должны установить секреты, используя контекст секретов . Дополнительные сведения см. В разделах «Использование переменных среды» и «Контексты».

    Пример

      шагов:
      - название: Мое первое действие
        env:
          GITHUB_TOKEN: $ {{секреты.GITHUB_TOKEN}}
          FIRST_NAME: Мона
          LAST_NAME: Octocat
      

    заданий. .steps [*]. Continue-on-error

    Предотвращает сбой задания при сбое шага. Установите значение true , чтобы разрешить выполнение задания в случае сбоя этого шага.

    заданий. .steps [*]. Timeout-minutes

    Максимальное количество минут для выполнения шага перед завершением процесса.

    заданий. .timeout-minutes

    Максимальное количество минут, в течение которых задание может выполняться, прежде чем GitHub автоматически его отменит.По умолчанию: 360

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

    вакансий. .strategy

    Стратегия создает матрицу построения для ваших рабочих мест. Вы можете определить различные варианты для выполнения каждого задания.

    вакансий. .strategy.matrix

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

    Матрица заданий может генерировать максимум 256 заданий за один запуск рабочего процесса. Этот лимит также распространяется на бегунов, которые размещаются самостоятельно.

    Каждая опция, которую вы определяете в матрице , имеет ключ и значение.Ключи, которые вы определяете, становятся свойствами в контексте матрицы , и вы можете ссылаться на свойство в других областях файла рабочего процесса. Например, если вы определяете ключ os , который содержит массив операционных систем, вы можете использовать свойство matrix.os в качестве значения ключевого слова running-on для создания задания для каждой операционной системы. Для получения дополнительной информации см. «Контексты».

    Порядок определения матрицы имеет значение. Первый вариант, который вы определите, будет первым заданием, выполняемым в вашем рабочем процессе.

    Пример: запуск нескольких версий Node.js

    Вы можете указать матрицу, указав массив для параметров конфигурации. Например, если средство выполнения поддерживает Node.js версий 10, 12 и 14, вы можете указать массив этих версий в матрице .

    В этом примере создается матрица из трех заданий путем установки ключа узла в массив из трех версий Node.js. Чтобы использовать матрицу, в примере задается свойство контекста matrix.node как значение входного параметра node-version действия setup-node .В результате будут запущены три задания, каждое из которых будет использовать свою версию Node.js.

      стратегия:
      матрица:
        узел: [10, 12, 14]
    шаги:
      
      - использует: actions / setup-node @ v2
        с участием:
          
          версия узла: $ {{matrix.node}}
      

    Действие setup-node - рекомендуемый способ настройки версии Node.js при использовании бегунов, размещенных на GitHub. Для получения дополнительной информации см. Действие setup-node .

    Пример: работа с несколькими операционными системами

    Вы можете создать матрицу для запуска рабочих процессов в более чем одной операционной системе runner.Вы также можете указать несколько конфигураций матрицы. В этом примере создается матрица из 6 заданий:

    • 2 операционные системы, указанные в массиве os
    • 3 версии Node.js, указанные в массиве узла

    Когда вы определяете матрицу операционных систем, вы должны установить значение run-on на значение контекста matrix.os , которое вы определили.

     Обкатка : $ {{matrix.os}}
    стратегия:
      матрица:
        ос: [ubuntu-18.04, убунту-20.04]
        узел: [10, 12, 14]
    шаги:
      - использует: actions / setup-node @ v2
        с участием:
          версия узла: $ {{matrix.node}}
      

    Чтобы найти поддерживаемые параметры конфигурации для бегунов, размещенных на GitHub, см. «Виртуальные среды для бегунов, размещенных на GitHub».

    Пример: включение дополнительных значений в комбинации

    Вы можете добавить дополнительные параметры конфигурации к уже существующему заданию матрицы построения. Например, если вы хотите использовать определенную версию npm , когда выполняется задание, которое использует windows-latest и версию 8 node , вы можете использовать include , чтобы указать эту дополнительную опцию.

     Обкатка : $ {{matrix.os}}
    стратегия:
      матрица:
        ОС: [macos-latest, windows-latest, ubuntu-18.04]
        узел: [8, 10, 12, 14]
        включают:
          
          
          - os: windows-последняя версия
            узел: 8
            npm: 6
      

    Пример: включение новых комбинаций

    Вы можете использовать include для добавления новых заданий в матрицу построения. Любые несовпадающие конфигурации включения добавляются в матрицу. Например, если вы хотите использовать узел , версии 14 для создания в нескольких операционных системах, но вам нужно одно дополнительное экспериментальное задание с использованием узла версии 15 в Ubuntu, вы можете использовать include , чтобы указать это дополнительное задание.

     Обкатка : $ {{matrix.os}}
    стратегия:
      матрица:
        узел: [14]
        ОС: [macos-latest, windows-latest, ubuntu-18.04]
        включают:
          - узел: 15
            ОС: убунту-18.04
            экспериментальный: правда
      

    Пример: исключение конфигураций из матрицы

    Вы можете удалить определенные конфигурации, определенные в матрице сборки, с помощью параметра exclude . Использование exclude удаляет задание, определенное матрицей построения. Количество заданий - это перекрестное произведение количества операционных систем ( os ), включенных в предоставляемые вами массивы, за вычетом любых вычитаний ( исключая ).

     Обкатка : $ {{matrix.os}}
    стратегия:
      матрица:
        ОС: [macos-latest, windows-latest, ubuntu-18.04]
        узел: [8, 10, 12, 14]
        исключать:
          
          - os: macos-последняя версия
            узел: 8
      

    Примечание: Все включают комбинацию обрабатываются после исключить . Это позволяет использовать , включая , для добавления ранее исключенных комбинаций.

    Использование переменных среды в матрице

    Вы можете добавить пользовательские переменные среды для каждой комбинации тестов с помощью ключа include .Затем вы можете обратиться к пользовательским переменным среды на более позднем этапе.

    В этом примере каждая запись матрицы для узла версии настроена на использование разных значений переменных среды сайта и центра обработки данных. Сайт Echo детализирует шаг затем использует env: $ {{matrix.env}} для ссылки на пользовательские переменные:

     имя : Node.js CI
    on: [push]
    вакансии:
      строить:
        работает: ubuntu-latest
        стратегия:
          матрица:
           включают:
             - версия узла: 10.Икс
               сайт: "прод"
               датацентр: "сайт-а"
             - версия узла: 12.x
               сайт: "dev"
               датацентр: "site-b"
        шаги:
          - name: Детали эхо-сайта
            env:
              САЙТ: $ {{matrix.site}}
              ДАТАЦЕНТР: $ {{matrix.datacenter}}
            запустить: echo $ SITE $ DATACENTER
      

    вакансий. .strategy.fail-fast

    Если установлено значение true , GitHub отменяет все выполняемые задания, если какое-либо задание matrix не удается.По умолчанию: true

    вакансий. .strategy.max-parallel

    Максимальное количество заданий, которые могут выполняться одновременно при использовании стратегии задания матрица . По умолчанию GitHub максимизирует количество параллельно выполняемых заданий в зависимости от доступных исполнителей на виртуальных машинах, размещенных на GitHub.

      стратегия:
      макс-параллель: 2
      

    заданий. .continue-on-error

    Предотвращает сбой рабочего процесса при сбое задания.Установите значение true , чтобы разрешить выполнение рабочего процесса при сбое этого задания.

    Пример: Предотвращение сбоя определенного задания матрицы с ошибкой при выполнении рабочего процесса

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

     Обкатка : $ {{matrix.os}}
    продолжение-при-ошибке: $ {{matrix.experimental}}
    стратегия:
      отказоустойчивый: ложь
      матрица:
        узел: [13, 14]
        os: [macos-latest, ubuntu-18.04]
        экспериментальный: [false]
        включают:
          - узел: 15
            ОС: убунту-18.04
            экспериментальный: правда
      

    вакансий. .container

    Контейнер для выполнения любых шагов в задании, в которых еще не указан контейнер. Если у вас есть шаги, которые используют как действия сценария, так и действия контейнера, действия контейнера будут выполняться как одноуровневые контейнеры в той же сети с одинаковыми подключениями томов.

    Если вы не установите контейнер , все шаги будут выполняться непосредственно на хосте, заданном параметром , запускается на , если только шаг не относится к действию, настроенному для запуска в контейнере.

    Пример

      вакансий:
      моя работа:
        контейнер:
          изображение: узел: 14.16
          env:
            NODE_ENV: разработка
          порты:
            - 80
          объемы:
            - my_docker_volume: / volume_mount
          параметры: --cpus 1
      

    Когда вы указываете только образ контейнера, вы можете опустить ключевое слово image .

      вакансий:
      моя работа:
        контейнер: узел: 14.16
      

    вакансий. .container.image

    Образ Docker для использования в качестве контейнера для запуска действия.Значением может быть имя образа Docker Hub или имя реестра.

    вакансий. .container.credentials

    Если реестр контейнеров образа требует аутентификации для получения образа, вы можете использовать учетные данные , чтобы установить карту из имени пользователя и пароля . Учетные данные - это те же значения, которые вы предоставили бы команде docker login .

    Пример

      контейнер:
      изображение: ghcr.io / владелец / изображение
      реквизиты для входа:
         имя пользователя: $ {{github.actor}}
         пароль: $ {{secrets.ghcr_token}}
      

    вакансий. .container.env

    Устанавливает карту переменных среды в контейнере.

    вакансий. .container.ports

    Устанавливает массив портов для отображения на контейнере.

    вакансий. .container.volumes

    Задает массив томов для использования в контейнере.Вы можете использовать тома для обмена данными между службами или на других этапах работы. Вы можете указать именованные тома Docker, анонимные тома Docker или привязать монтирования на хосте.

    Чтобы указать том, вы указываете путь источника и назначения:

    <источник>: <путь назначения> .

    - это имя тома или абсолютный путь на хост-машине, а - это абсолютный путь в контейнере.

    Пример

      томов:
      - my_docker_volume: / volume_mount
      - / данные / my_data
      - / источник / каталог: / пункт назначения / каталог
      

    вакансий. .container.options

    Дополнительные параметры ресурсов контейнера Docker. Список параметров см. В разделе «Докер создает параметры ».

    Предупреждение: Параметр --network не поддерживается.

    вакансий. .services

    Примечание: Если в ваших рабочих процессах используются действия контейнера Docker или контейнеры служб, то вы должны использовать средство выполнения Linux:

    • Если вы используете бегуны, размещенные на GitHub, вы должны использовать бегун Ubuntu.
    • Если вы используете автономные бегуны, вы должны использовать машину Linux в качестве бегуна и установить Docker.

    Используется для размещения контейнеров служб для задания в рабочем процессе. Контейнеры служб полезны для создания баз данных или служб кеширования, таких как Redis. Средство выполнения автоматически создает сеть Docker и управляет жизненным циклом контейнеров служб.

    Если вы настроили задание для выполнения в контейнере или на шаге используются действия контейнера, вам не нужно сопоставлять порты для доступа к службе или действию.Docker автоматически открывает все порты между контейнерами в одной и той же определяемой пользователем мостовой сети Docker. Вы можете напрямую ссылаться на сервис-контейнер по его имени хоста. Имя хоста автоматически сопоставляется с именем метки, которое вы настраиваете для службы в рабочем процессе.

    Если вы настраиваете задание для запуска непосредственно на машине-исполнителе и ваш шаг не использует действие контейнера, вы должны сопоставить все требуемые порты контейнера службы Docker с хостом Docker (машиной-исполнителем). Вы можете получить доступ к сервисному контейнеру, используя localhost и сопоставленный порт.

    Дополнительные сведения о различиях между контейнерами сетевых служб см. В разделе «О контейнерах служб».

    Пример: использование localhost

    В этом примере создаются две службы: nginx и redis. Когда вы указываете порт хоста Docker, но не порт контейнера, порт контейнера случайным образом назначается свободному порту. GitHub устанавливает назначенный порт контейнера в контексте $ {{job.services. .ports}} . В этом примере вы можете получить доступ к портам сервисного контейнера с помощью задания $ {{.services.nginx.ports ['8080']}} и $ {{job.services.redis.ports ['6379']}} контекст.

     услуги :
      nginx:
        изображение: nginx
        
        порты:
          - 8080: 80
      Redis:
        изображение: redis
        
        порты:
          - 6379 / TCP
      

    вакансий. .services. .image

    Образ Docker для использования в качестве контейнера службы для запуска действия. Значением может быть имя образа Docker Hub или имя реестра.

    вакансий. .services. .credentials

    Если реестр контейнеров образа требует аутентификации для получения образа, вы можете использовать учетные данные , чтобы установить карту из имени пользователя и пароля . Учетные данные - это те же значения, которые вы предоставили бы команде docker login .

    Пример

     услуги :
      myservice1:
        изображение: ghcr.io/owner/myservice1
        реквизиты для входа:
          имя пользователя: $ {{github.актер }}
          пароль: $ {{secrets.ghcr_token}}
      myservice2:
        изображение: dockerhub_org / myservice2
        реквизиты для входа:
          имя пользователя: $ {{secrets.DOCKER_USER}}
          пароль: $ {{secrets.DOCKER_PASSWORD}}
      

    вакансий. .services. .env

    Устанавливает карту переменных среды в сервисном контейнере.

    вакансий. .services. .ports

    Устанавливает массив портов для отображения в сервисном контейнере.

    вакансий. .services. .volumes

    Устанавливает массив томов для использования сервисным контейнером. Вы можете использовать тома для обмена данными между службами или на других этапах работы. Вы можете указать именованные тома Docker, анонимные тома Docker или привязать монтирования на хосте.

    Чтобы указать том, вы указываете путь источника и назначения:

    <источник>: <путь назначения> .

    - это имя тома или абсолютный путь на хост-машине, а - это абсолютный путь в контейнере.

    Пример

      томов:
      - my_docker_volume: / volume_mount
      - / данные / my_data
      - / источник / каталог: / пункт назначения / каталог
      

    вакансий. .services. .options

    Дополнительные параметры ресурсов контейнера Docker. Список параметров см. В разделе «Докер создает параметры ».

    Предупреждение: Параметр --network не поддерживается.

    вакансий. .использует

    Расположение и версия повторно используемого файла рабочего процесса для запуска в качестве задания.

    {owner} / {repo} / {path} / {filename} @ {ref}

    {ref} может быть SHA, тегом выпуска или именем ветки. Использование фиксации SHA является самым безопасным для стабильности и безопасности. Дополнительные сведения см. В разделе «Усиление безопасности для действий GitHub».

    Пример

      вакансий:
      вызов-рабочий процесс-1:
        использует: octo-org / this-repo / .github / workflows / workflow-1.yml @ 172239021f7ba04fe7327647b213799853a9eb89
      вызов-рабочий процесс-2:
        использует: octo-org/another-repo/.github/workflows/workflow-2.yml@v1
      

    Для получения дополнительной информации см. «Повторное использование рабочих процессов».

    вакансий. . С

    Когда задание используется для вызова многоразового рабочего процесса, вы можете использовать с для предоставления карты входных данных, которые передаются в вызываемый рабочий процесс.

    Любые входные данные, которые вы передаете, должны соответствовать входным спецификациям, определенным в вызываемом рабочем процессе.

    В отличие от заданий . .steps [*]. С , входные данные, которые вы передаете с заданиями . . С , недоступны в качестве переменных среды в вызываемом рабочем процессе. Вместо этого вы можете ссылаться на входы с помощью контекста входов .

    Пример

      вакансий:
      звонок-рабочий процесс:
        использует: octo-org/example-repo/.github/workflows/called-workflow.yml@main
        с участием:
          имя пользователя: мона
      

    вакансий. .с.

    Пара, состоящая из строкового идентификатора ввода и значения ввода. Идентификатор должен соответствовать имени входа, определенного параметром on.workflow_call.inputs. в вызываемом рабочем процессе. Тип данных значения должен соответствовать типу, определенному параметром on.workflow_call. .type в вызываемом рабочем процессе.

    Допустимые контексты выражений: github , а для требуется .

    вакансий. .secrets

    Когда задание используется для вызова повторно используемого рабочего процесса, вы можете использовать секретов , чтобы предоставить карту секретов, которые передаются в вызываемый рабочий процесс.

    Любые передаваемые секреты должны соответствовать именам, определенным в вызываемом рабочем процессе.

    Пример

      вакансий:
      звонок-рабочий процесс:
        использует: octo-org/example-repo/.github/workflows/called-workflow.yml@main
        секреты:
          токен доступа: $ {{secrets.PERSONAL_ACCESS_TOKEN}}
      

    вакансий. .secrets.

    Пара, состоящая из строкового идентификатора секрета и значения секрета. Идентификатор должен соответствовать имени секрета, определенного параметром on.workflow_call.secrets. в вызываемом рабочем процессе.

    Допустимые контексты выражений: github , требуется и секретов .

    Шпаргалка по шаблонам фильтров

    Вы можете использовать специальные символы в фильтрах пути, ветки и тега.

    • * : соответствует нулю или более символов, но не соответствует символу /. Например, Octo * соответствует Octocat .
    • ** : соответствует нулю или более любых символов.
    • ? : соответствует нулю или одному из предшествующих символов.
    • + : соответствует одному или нескольким предыдущим символам.
    • [] Соответствует одному символу, указанному в скобках или включенному в диапазоны.Диапазоны могут включать только a – z , A – Z и 0–9 . Например, диапазон [0-9a-z] соответствует любой цифре или строчной букве. Например, [CB] в соответствует Cat или Bat и [1-2] 00 соответствует 100 и 200 .
    • ! : В начале паттерна заставляет его отрицать предыдущие положительные паттерны. Он не имеет особого значения, если не первый символ.

    Символы * , [ и ! - специальные символы в YAML.Если вы начинаете узор с * , [ или ! , вы должны заключить узор в кавычки.

     
    - '** / README.md'
    
    
    
    - ** / README.md
      

    Для получения дополнительной информации о синтаксисе фильтров ветвей, тегов и путей см. « on. . » и « on. .paths ».

    Шаблоны для соответствия веткам и тегам

    Шаблон Описание Пример соответствует
    Функция / * Подстановочный знак * соответствует любому символу, но не соответствует косой черте (/). feature / my-branch

    feature / your-branch

    feature / ** Подстановочный знак ** соответствует любому символу, включая косую черту (/) в ветке и теге имена. feature / beta-a / my-branch

    feature / your-branch

    feature / mona / the / octocat

    main

    Release / mona-the-octocat

    Соответствует точному имени ветви или имени тега. main

    Release / mona-the-octocat

    '*' Соответствует всем именам ветвей и тегов, которые не содержат косой черты (/). Символ * - это специальный символ в YAML. Когда вы начинаете паттерн с * , вы должны использовать кавычки. основной

    выпусков

    '**' Соответствует всем именам веток и тегов.Это поведение по умолчанию, когда вы не используете веток или теги фильтр. all / the / branch

    every / tag

    '* feature' Символ * является специальным символом в YAML. Когда вы начинаете паттерн с * , вы должны использовать кавычки. mona-feature

    feature

    ver-10-feature

    v2 * Соответствует именам веток и тегов, которые начинаются с v2 . v2

    v2.0

    v2.9

    v [12]. [0-9] +. [0-9] + Соответствует всем семантическим ветвям управления версиями и теги с основной версией 1 или 2 v1.10.1

    v2.0.0

    Шаблоны для сопоставления путей к файлам

    Шаблоны пути должны соответствовать всему пути и начинаться с корня репозитория.

    Шаблон Описание совпадений Пример совпадений
    '*' Подстановочный знак * соответствует любому символу, но не соответствует наклонной черте (/).Символ * - это специальный символ в YAML. Когда вы начинаете паттерн с * , вы должны использовать кавычки. README.md

    server.rb

    '* .jsx?' ? символ соответствует нулю или одному из предшествующих символов. page.js

    page.jsx

    '**' Подстановочный знак ** соответствует любому символу, включая косую черту (/).Это поведение по умолчанию, если вы не используете фильтр путь . all / the / files.md
    '* .js' Подстановочный знак * соответствует любому символу, но не соответствует наклонной черте (/). Соответствует всем файлам .js в корне репозитория. app.js

    index.js

    '**. Js' Соответствует всем файлам .js в репозитории. index.js

    js / index.js

    src / js / app.js

    docs / * Все файлы в корневом каталоге в корне репозитория. docs / README.md

    docs / file.txt

    docs / ** Любые файлы в каталоге / docs в корне репозитория. документов / README.md

    docs / mona / octocat.txt

    docs / ** / *. md Файл с суффиксом .md в любом месте каталога docs . docs / README.md

    docs / mona / hello-world.md

    docs / a / markdown / file.md

    '** / docs / **' Любые файлы в каталоге docs в любом месте репозитория. документов / привет.md

    dir / docs / my-file.txt

    space / docs / plan / space.doc

    '** / README.md' Файл README.md где угодно в репозитории. README.md

    js / README.md

    '** / * src / **' Любой файл в папке с суффиксом src в любом месте репозитория. a / src / app.js

    my-src / code / js / app.js

    '** / * - post.md' Файл с суффиксом -post.md в любом месте репозитория. my-post.md

    path / their-post.md

    '** / migrate - *. Sql' Файл с префиксом migrate- и суффиксом .sql в любом месте репозитория. migrate-10909.sql

    db / migrate-v1.0.sql

    db / sept / migrate-v1.sql

    * .md

    ! README.md

    Использование восклицательного знака (! ) перед узором отрицает его. Когда файл соответствует шаблону, а также соответствует отрицательному шаблону, определенному позже в файле, файл не будет включен. hello.md

    Не соответствует

    README.md

    docs / hello.md

    *.md

    ! README.md

    README *

    Шаблоны проверяются последовательно. Шаблон, который отрицает предыдущий шаблон, повторно включает пути к файлам. hello.md

    README.md

    README.doc

    Частый запуск, автоматизация на основе изменений пакетами

    В блоке Запуск рабочего процесса автоматизированный рабочий процесс, вы можете настроить, должен ли рабочий процесс на основе изменений запускаться немедленно или пакетировать изменения и доставлять предупреждения и / или запросы ежечасно, ежедневно или еженедельно в зависимости от изменений, которые произошли в заданный период времени.

    Имейте в виду следующее при настройке поведения выполнения для рабочего процесса:

    • Установите срабатывание триггера за час до того, как должно произойти действие. Это гарантирует, что технические проблемы не помешают своевременному выполнению действия.
    • Рабочие процессы
    • , настроенные на ежедневное выполнение, будут оценивать изменения на листе и выполняться с 12:00 до 23:59 в часовом поясе владельца листа, а сообщения будут доставляться между 12:00 и 4:00 утра следующего дня. день.
    • Еженедельные рабочие процессы будут выполняться с первой пятницы в 12:00 AM до 23:59 следующего четверга, а сообщения будут доставляться между 12:00 AM и 4:00 AM во вторую пятницу. .
      Например: еженедельное оповещение, созданное в среду, 1-го, будет срабатывать первый раз в пятницу 3-го. Он будет содержать изменения, которые произошли с момента создания рабочего процесса 1-го числа до 11:59 вечера четверга 2-го.Предупреждение на следующей неделе будет отправлено 10-го числа и будет включать изменения с пятницы 3-го на четверг 9-го числа.
    • Если несколько строк изменяются при сохранении листа в течение периода времени с выбранной периодичностью, то рабочий процесс будет выполняться для каждой строки, соответствующей критериям триггера. Получатели этой автоматизации получат одно уведомление, содержащее до 100 строк в формате сетки.
    • Если в настраиваемых сообщениях вашей автоматизации используются заполнители, для каждого уникального настраиваемого сообщения будут создаваться отдельные предупреждения.Заполнители нельзя использовать, если для рабочего процесса Run: установлено значение Hourly , Daily или Weekly . См. Раздел «Динамическое добавление данных ячеек в тему и текст сообщений запроса» для получения дополнительной информации о заполнителях сообщений.
    • Следующие действия нельзя использовать с Выполнить рабочий процесс : установить ежечасно, ежедневно или еженедельно, записывать дату, перемещать строки, копировать строки, блокировать строки, разблокировать строки и запросы на утверждение, которые содержат последующие действия.

    Организационный рабочий процесс и его влияние на качество работы - безопасность и качество пациентов

    Общие сведения

    Что такое рабочий процесс?

    Рабочий процесс, в широком смысле слова, - это набор задач, сгруппированных в хронологическом порядке в процессы, и набор людей или ресурсов, необходимых для выполнения этих задач, которые необходимы для достижения поставленной цели. Рабочий процесс организации состоит из набора процессов, которые необходимо выполнить, набора людей или других ресурсов, доступных для выполнения этих процессов, и взаимодействия между ними.Рассмотрим следующий сценарий:

    Медленным пятничным днем ​​в отделении неотложной помощи, когда одна медсестра готовится к выходу из смены, клерк поднимает взгляд из-за стола и спрашивает: «Кстати, раз уж вы проходите мимо по дому. Выходите, не напомните им, что комнату 12 еще нужно убрать? "

    «Нет проблем», - отвечает медсестра, и действительно, в медленный пятничный день это не проблема. Неформальные методы и процессы, которые больница разрабатывала на протяжении многих лет, чтобы предприятие работало хорошо, в целом, и могут работать очень хорошо в оптимальное время.Напомнить домашнему хозяйству о необходимости подняться не составит труда; Нетрудно отправить особый образец в лабораторию и, конечно же, нетрудно поймать лечащего врача во время обхода, чтобы получить быструю подпись. Даже если эти небольшие корректировки будут забыты, в должное время в обычном графике больницы появятся нужные люди, которые уберут комнату, заберут лабораторный образец и задокументируют встречу.

    Однако те же методы, которые использует организация для выполнения работы, могут вызывать стресс в тяжелых условиях.Когда палата заполнена и требуется 12 часов для подготовки комнаты для следующего пациента, это влияние ощущается во всей организации. Когда количество небольших перерывов превышает объем запланированной работы, выполненной за данный час, это влияние проявляется в более медленном продвижении, меньшем удовлетворении работой и потенциально более низком качестве обслуживания. Во многих ситуациях всем очень ясно, что нужно делать. Разница между организациями заключается в том, как они это делают. Изучение того, как организация выполняет свои задачи, часто касается рабочего процесса организации.

    В здравоохранении, как и в других отраслях, одни рабочие процессы разработаны, а другие возникают органически и развиваются. Системы и методы, с помощью которых организации достигают конкретных целей, сильно различаются. Некоторые организационные рабочие процессы кажутся более простыми, чем другие. Чаще всего, когда процессы рабочего процесса рассматриваются изолированно, они кажутся вполне логичными (и даже эффективными) в действиях для достижения конечной цели. Сложности возникают во взаимодействии между процессами.За некоторыми из этих взаимодействий скрываются конфликты в приоритетах различных ролей в организации, например, что подотчетна бригаде медсестер по сравнению с бригадой врачей и ее расписанием. Организации также адаптируют рабочие процессы к меняющейся среде. Со временем анализ рабочих процессов в организации может показать, что в некоторых процессах больше нет необходимости или они могут быть обновлены и оптимизированы.

    Почему это важно для медсестер?

    Здравоохранение часто сталкивается с необходимостью разработки или изменения своих рабочих процессов, чтобы сделать их более эффективными и действенными.Во многих случаях триггером для изучения рабочего процесса является реакция на изменения в том, как что-то делается. Сегодня необходимость продумать структуру рабочего процесса является более актуальной из-за нескольких факторов, в том числе:

    • Внедрение новых технологий и методологий лечения в клиническую помощь

    • Проблема координации помощи хронически больным

    • Участие растущего числа профессионалов в группе ухода за пациентами и новые определения их ролей

    • Давление на затраты и эффективность для улучшения потока пациентов

    • Инициативы по обеспечению безопасности пациентов

    • Внедрение изменений в сделать медицинскую бригаду более ориентированной на пациента

    Одной из важных причин того, что рабочий процесс является неотложной проблемой для современных клиницистов, является внедрение в клиническую практику новых информационных технологий здравоохранения (ИТ).Информационные технологии в области здравоохранения обещают множество преимуществ для повышения качества и эффективности. Однако внедрение ИТ в сфере здравоохранения может нанести серьезный ущерб существующим рабочим процессам в организации. ИТ-системы здравоохранения часто неявно предполагают структуру рабочего процесса в том, как организованы их экраны и шаги. Организации, которые заботятся о структуре рабочего процесса, с большей вероятностью смогут успешно адаптироваться к работоспособной ИТ. 1

    В отличие от таких отраслей, как производство, здравоохранение - это сфера услуг, которая в значительной степени полагается на достоверную информацию.Внимательно следя за пациентами и заботясь о них, медсестры являются хранителями богатого источника информации. Эта ценная информация может быть потеряна, когда плохие рабочие процессы мешают общению и координации или увеличивают прерывания. 2 Характеристики плохо функционирующего рабочего процесса включают ненужные паузы и переделки, задержки, установленные обходные пути, пробелы, в которых шаги часто пропускаются, и процесс, который участники считают нелогичным.

    Создание хорошего организационного рабочего процесса - это не просто повышение эффективности.Рабочие процессы - это карты, которые направляют медицинскую группу по достижению цели. Хороший рабочий процесс поможет своевременно достичь этих целей, что приведет к тому, что медицинская помощь будет оказываться более последовательно, надежно, безопасно и в соответствии со стандартами практики. Отличный рабочий процесс может учитывать вариации, которые неизбежно возникают в здравоохранении из-за взаимодействия с другими рабочими процессами, а также факторы окружающей среды, такие как рабочая нагрузка, расписание персонала и нагрузка на пациентов.

    Доказательства исследований

    Исследователи служб здравоохранения исследовали проблемы рабочего процесса с нескольких точек зрения, включая отображение процессов из других отраслей в здравоохранении.Литературу о рабочем процессе можно найти в нескольких различных областях, таких как улучшение качества, внедрение технологий и улучшение процессов. Одна общая черта в литературе - важность междисциплинарного участия во всех аспектах анализа и реализации рабочего процесса.

    Обзор имеющихся на сегодняшний день данных, целевые исследования конкретных вмешательств и технологий убедительно показывают, что хорошая структура рабочего процесса оказывает значительное (ожидаемое и неожиданное) влияние на оказание помощи. 3 Литература также демонстрирует относительную нехватку изысканности в исследованиях в данной области: обеспокоены ли исследователи изначально проблемой или она возникает органически из результатов; есть ли у исследователей теоретические основы для интерпретации своих выводов; есть ли последовательность в интересующих результатах; являются ли цели исследования структурными, культурными и / или функциональными; и могут ли исследователи делать выводы из одних условий в другие.Многие исследования продемонстрировали значительную пользу от внимательного рассмотрения рабочего процесса, но лишь немногие исследования предоставили легко адаптируемые инструменты и методы для немедленной и последовательной реализации.

    Влияние на эффективность

    Анализ рабочего процесса часто используется с целью повышения эффективности. В ответ на финансовое давление и стимулы, движущие организациями-поставщиками, стало важным минимизировать время простоя. Некоторые из исследований, обсуждаемых ниже, продемонстрировали возможности анализа и изменения рабочего процесса для повышения эффективности.

    Анализ рабочего процесса можно использовать для изменения существующих процессов. Классическим исследованием этого типа является анализ Сендана и Гуда 4 рутинных задач различных членов операционной бригады. Они обнаружили, что функции сильно варьируются в зависимости от клинических и организационных факторов. Они разработали новый рабочий процесс на основе анализа и провели пилотное исследование. Часть их рекомендованного решения включала определение функций более последовательным образом.Они смогли улучшить текучесть кадров и улучшить среднее количество дел, обрабатываемых за день. Существенным фактором их успеха было то, что они рассматривали рабочий процесс как с точки зрения врача, так и с точки зрения медсестер.

    Эффективность также можно повысить, выполняя процессы параллельно, а не повышая эффективность существующих этапов. 5 Фридман и его коллеги 6 сравнили влияние анестезии в индукционной комнате и в операционной у пациентов с герниопластикой.Они обнаружили, что время, затрачиваемое хирургом на операционную, уменьшилось без значительного влияния на удовлетворенность пациента или результаты. 6 Хардерс и его коллеги 7 использовали комбинацию подходов. Они использовали параллельную обработку и переработку процессов для улучшения рабочего процесса в центре третичной медицинской помощи с несколькими операционными. Такое сочетание подходов позволило сократить время простоя. Аналогичным образом, в исследовании травматологических команд Дрисколл и Винсент 8 изменили распределение задач таким образом, что стандартные задачи, выполняемые во время кода травмы, выполнялись параллельно, а не последовательно.

    В каждом из этих подходов определение ролей сыграло решающую роль в успехе усилий. Каждое исследование показало, что распорядок ухода за больными часто включает в себя доклинические задачи, такие как отслеживание недостающей информации или расходных материалов. 9 Определив роли и основные процессы, стало возможным использовать вспомогательный персонал для выполнения этих задач. Для того, чтобы реконструкция была успешной, с самого начала было важно вовлечение медперсонала. Междисциплинарный подход обеспечил основу для анализа и изменения рабочего процесса; это было указано как фактор успеха в нескольких исследованиях. 4 , 6 , 7

    Общие проблемы

    Проблемы рабочего процесса часто возникают при изучении технологий. Одна из хорошо изученных областей - это управление лекарствами со штрих-кодом (BCMA). 10 BCMA - это технология, которая, как было доказано, улучшает качество обслуживания за счет уменьшения зависимости от памяти, расширения доступа к информации и повышения соответствия передовым практикам. Однако очень простые неудобства, такие как необходимость доступа к запястью пациента для полосы штрих-кода, привели к обходным путям рабочего процесса, таким как сканирование штрих-кодов с связки ключей, а не пациента.В этом случае адаптация медсестер к повышению эффективности их работы сводит на нет некоторые предполагаемые преимущества определенного процесса.

    Наблюдались и более сложные взаимодействия. Поскольку многие системы BCMA требуют, чтобы врач ввел приказ, прежде чем медсестра сможет получить доступ к лекарству, некоторые медсестры в критических ситуациях «одалживают» лекарство у одного пациента в палате, чтобы отдать его другому до тех пор, пока лекарство для второго пациента. появляется в системе. В результате медсестра не может легко задокументировать выполнение приказа до тех пор, пока его не введет врач.В некоторых ситуациях теневая система неофициальной бумажной документации дополняет, дублирует или сбивает с толку документацию, зарегистрированную в электронной системе.

    Когда технология не обеспечивает адекватной поддержки целей группы по уходу, это часто вызывает рабочие процессы обходного пути. Эти альтернативные рабочие процессы вызывают беспокойство, потому что эти неформальные, эволюционные системы полагаются на воспоминания врачей и обходят меры поддержки принятия решений, которые система может предоставить. Исследования документально подтвердили другие отрицательные эффекты, 11 , такие как ухудшение координации между медсестрами и врачами, отказ медсестер от занятий в периоды занятости и снижение способности отклоняться от рутинной последовательности действий.

    Передача информации

    Медицинские организации предоставляют ценные услуги, полагаясь на большие объемы высококачественной информации. Передача информации затруднена, потому что для ухода за одним пациентом может быть задействовано множество поставщиков и источников информации. Таким образом, в точках передачи обслуживания или перехода возникает много ошибок. 12 Дайкс и его коллеги 13 обнаружили, что во многих больницах США ведется двойная бумажная и электронная документация, что ведет к дублированию и неэффективности информации.Другие информационные инструменты включают фирменные бумажные формы, телефон, электронную систему записи, доску, пейджер и расписания. 14 Кроме того, неформальные встречи и устные приказы часто также служат в качестве средств передачи информации. 15

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

    Общий класс проблем с передачей информации и передачей обслуживания включает ухудшение качества информации. 17 Если методы передачи являются неофициальными и не задокументированы, информация о пациенте не может передаваться, когда сотрудники покидают отделение. Кроме того, не всегда ясны границы ответственности и ожиданий. 17 Может помочь включение формализованных инструментов и протоколов передачи информации в рабочие процессы. Еще одна проблема, затрудняющая передачу информации, - это перебои.Эти перерывы часто вызывают перебои в рабочем процессе, что может повлиять на то, какая информация документируется и передается. 18 , 19

    Внутрипрофессиональная передача информации

    Медсестринская работа часто фрагментирована и ускоряется из-за внешнего давления и динамической среды. 20 Однако медсестры служат важными интеграторами и координаторами помощи. ИТ-инструменты здравоохранения, которые могут помочь медсестрам лучше управлять и передавать информацию, а также сделать информацию более доступной, могут улучшить практику. 21 Внутрипрофессиональные передачи могут происходить внутри или между отделами. В любом случае коммуникация и координация улучшаются за счет наличия структурированного формата документации. 22

    Ламонд 23 проанализировал содержание отчетов о смене медсестер и обнаружил, что в записях пациентов было задокументировано больше информации, чем в отчетах. Информация в отчете, как правило, была более общей оценкой ухода за пациентами, которая не обязательно была задокументирована.Таким образом, неясно, передавалась ли подробная информация в последующих отчетах. Perrott 24 обнаружил, что настройка полей данных и вовлечение медсестер с самого начала улучшили передачу медсестер в отделении интенсивной терапии (ICU).

    Понимая рабочий процесс медсестер, можно обсудить и улучшить препятствия и средства, способствующие передаче информации. 25 Если механизмы передачи обслуживания являются неформальными, то они могут не быть задокументированы в анализе рабочего процесса. 26 ИТ-системы здравоохранения не должны заменять эти передачи обслуживания, но могут быть использованы для расширения процесса. 27 Однако, когда процессы не совсем понятны, технология может не использоваться и даже может быть обузой.

    Межпрофессиональная передача информации

    Непоследовательная или неполная информация во время передачи информации о пациентах - часто упоминаемая проблема общения. 28 Эта проблема усугубляется системами и процессами с дублирующейся или устаревшей информацией. Доступно много информации, но она не всегда доступна в упорядоченном или организованном виде. 29

    Медицинские работники, обученные по разным дисциплинам, по-разному социализированы и обучаются, поэтому они не обязательно знают, что нужно другим. 29 Таким образом, при разработке и внедрении информационных технологий в разных отделах важно, чтобы на протяжении всего процесса участвовала междисциплинарная команда. 22 Врачи и медсестры, как правило, не имеют одного и того же работодателя и часто имеют разную лояльность и конечные цели. 4 Таким образом, при разработке методов передачи обслуживания и связи важно учитывать множество перспектив.

    Один из способов взглянуть на межпрофессиональное сотрудничество - это посмотреть на информационные потребности. Редди и его коллеги 30 рассмотрели информационные потребности различных поставщиков в отделении интенсивной терапии. Они обнаружили, что некоторые роли, в том числе медсестры, служили источниками информации для других поставщиков. Таким образом, важно учитывать последствия изменения источников информации для рабочего процесса. Когда личное общение с медсестрой заменяется электронным отчетом, что теряется и что приобретается? Электронный доступ обеспечивает преимущества быстрого доступа к большим объемам исходных данных, потенциально дополненных поддержкой принятия решений.Могут быть потеряны функции синтеза, обобщения и согласования информации. В опросе старших медсестер Дайкс и его коллеги 13 подчеркнули роль медсестер как координаторов и коммуникаторов.

    Райли и Маниас 31 изучали общение врача и медсестры в операционной. Они обнаружили, что медсестры часто неформально знали врачей и их привычки, которые они использовали для контроля практики. Эти знания не обязательно были систематизированы формально, поэтому новым медсестрам будет сложно оценить рабочий процесс.Медицинские организации прилагают усилия по стандартизации межпрофессионального общения, например, посредством требования использования SBAR для ситуационного инструктажа. 32

    Не всегда необходимо иметь отдельный процесс для межпрофессионального общения. В самом деле, другие усилия могут быть перепрофилированы для межпрофессионального общения. Например, Cunliffe 33 описал процесс составления сводки при выписке медсестер, который был перепрофилирован для обеспечения устройства связи медсестры и терапевта.В сводке выписки медперсонала представлена ​​подробная информация о сестринском и социальном уходе за пациентом после выписки из больницы. Кроме того, отправка его терапевту (GP) обеспечила механизм для связи, чтобы терапевт был хорошо информирован о лечении пациента. Точно так же и другие профессионалы могут получить доступ к резидентной системе выхода из системы. 34 Тем не менее, линии связи, как правило, разделены и зависят от профессионалов, поэтому неясно, в какой степени осуществляется доступ внутри профессионала.Паттерсон и его коллеги 35 изучили стратегии передачи обслуживания в других отраслях и обрисовали некоторые общие стратегии для эффективной передачи обслуживания. Часто документация была дополнением к передаче, а не единственным механизмом передачи информации.

    Информационные технологии в области здравоохранения

    При правильном использовании ИТ в здравоохранении могут повысить эффективность и рабочий процесс организации. В здравоохранении часто создается и сохраняется избыточная информация. В результате поставщики медицинских услуг тратят много времени на согласование информации из различных источников.Интеграция ИТ в области здравоохранения с рабочим процессом различных отделов может помочь уменьшить эту избыточность. 22 Однако, если не учитывать рабочий процесс и не внедрять технологию продуманно, преимущества не могут быть достигнуты по-настоящему. Чтобы использовать технологию наиболее эффективно, необходимо осознать ее потенциальное влияние на преобразование системы оказания медицинской помощи. 36

    Хотя при внедрении ИТ для работоспособности важно учитывать рабочий процесс, это не означает, что ИТ-отдел работоспособности должен оставлять процессы нетронутыми.Информационные технологии в области здравоохранения могут привести к положительным изменениям в процессе и улучшить рабочий процесс. Поскольку ИТ-служба может консолидировать и отображать информацию, ее можно использовать как возможность улучшить командную работу и общение. 37 Понимание существующего клинического рабочего процесса до его внедрения дает основу для перепроектирования систем и разработки более совершенных процессов. 38 Шармхорст, Джонсон и Ли 39 подчеркнули важность понимания системы до внедрения технологии, чтобы гарантировать, что технология оптимизирует рабочий процесс медсестер, а не усложняет его.В исследовании мобильных шкафов со сканированием штрих-кода для лекарств Брасвелл и Дуггар 40 обнаружили, что, предварительно проанализировав рабочий процесс, и аптеки, и медперсонал сообщили об улучшениях существующих рабочих процессов после внедрения. Проблемы рабочего процесса могут привести к отказу от внедрения новых технологий. Изучение стандартов электронных систем назначения лекарств показывает, что многие из электронных стандартов являются адекватными, но их принятие провайдерами является низким, поскольку системы не вписываются в рабочий процесс. 41 Оценщики рекомендуют пересмотреть стандарты и системы, чтобы учесть большую роль медсестер в электронном назначении рецептов в офисе.

    В центре внимания компьютеризированный ввод заказов поставщиков

    Компьютеризированный ввод заказов поставщиков (CPOE) - это легко измеримый, часто реализуемый и часто навязчивый пример ИТ в сфере здравоохранения, который часто изучается в литературе. CPOE обычно ассоциируется с его влиянием на врачебную практику. Тем не менее, внедрение CPOE связано с рабочим процессом для всей бригады по уходу, включая врачей и медсестер. 42 Например, если врачи отказываются использовать систему CPOE, это отрицательно сказывается на рабочем процессе медсестер. 3 , 28 Иногда медсестры становятся де-факто штатным персоналом, помимо своих сестринских обязанностей. Эти обходные пути также имеют последствия в дальнейшем. Задержки с вводом заказа могут затруднить доставку лекарств. Внедрение технологии CPOE может выявить неформальные практики, которые могут не соответствовать предписываемым объемам практики.Таким образом, медсестры являются ключевым фактором успеха в реализации CPOE. 43 Поскольку медсестры часто несут основную ответственность за коммуникацию и координацию ухода, понимание рабочих процессов медсестер в отношении ввода заказов имеет решающее значение. 44

    Пейн 45 обнаружил, что внедрение CPOE оказало сильное влияние на рабочие модели, методы связи и роли. При анализе рабочего процесса, связанного с электронным назначением рецептов, был обозначен круг задач, выполняемых лицами, не выписывающими рецепты. 46 Описав рабочие процессы и информационные потоки, они смогли адаптировать систему для решения необходимых задач. Точно так же Райт и его коллеги 47 обнаружили, что на общение врач-медсестра повлияла реализация CPOE. При вводе ордеров на бумаге часто используются визуальные подсказки, например, сложенный лист бумаги. Если потеря контекста и визуальных подсказок не учтена при реализации CPOE, то это отрицательно скажется на рабочем процессе медсестры из-за неопределенности в отношении приказов.

    Piasecki и его коллеги 48 провели анализ рабочего процесса, чтобы изучить преимущества внедрения CPOE в условиях отделения неотложной помощи. Эти исследователи разработали инструмент возврата инвестиций для измерения результатов внедрения и обнаружили, что многие из сэкономленных средств не оказали прямого влияния на чистую прибыль организации. Частично это было связано с тем, что изменения в рабочем процессе не были полностью поняты до момента внедрения.

    Хотя руководств по анализу рабочего процесса немного, общим фактором было рассмотрение всех затронутых ролей в организации, а не только тех, которые связаны с вводом данных в ИТ-систему.Бреслин и его коллеги 49 обнаружили, что наличие междисциплинарной команды было важным для успеха внедрения Vocera. В эту команду входили клинический и доклинический персонал. Благодаря инклюзивности они узнали о рабочем процессе с разных точек зрения и смогли реализовать свой инструмент таким образом, чтобы улучшить существующие практики.

    Текущая работа по исследованию рабочих процессов медсестер

    Исследования рабочих процессов медсестер имеют давние корни в исследованиях того, как медсестры проводят свое время и как следует укомплектовать бригады медсестер. 50–52 Медсестры-исследователи, приступающие к наблюдательным исследованиям сестринского труда, могут воспользоваться преимуществами ранее разработанных инструментов для анализа рабочих задач и изучения движения времени. 53–55

    С внедрением новых технологий область исследований включает изучение влияния на работу медсестер с целью обеспечить качественное времяпрепровождение у постели больного. Продолжающееся большое исследование рабочего процесса медсестер 56 на нескольких участках и движения во времени включает участие медсестер первой линии в проектировании и улучшении их рабочих мест и технологий.Это один из способов, которым уроки, извлеченные из прошлых исследований, могут быть использованы при разработке будущего рабочего процесса с целью смягчения боли, связанной с учебным рабочим процессом, и слабых сторон технологий за счет реализованного опыта.

    Практическое значение

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

    Было показано, что осознанное проектирование рабочего процесса повышает эффективность существующих рабочих процессов или позволяет распараллеливать работу. При разработке таких систем исследователи подчеркивают важность четкого определения ролей и обязанностей, желательно с мультидисциплинарным вкладом. Разработка рабочего процесса имеет решающее значение для всех ролей в организации здравоохранения, потому что последствия решений эксперта в одной роли могут иметь последующие эффекты для других. Рабочий процесс, оптимизированный для выполнения одной роли, такой как медсестра, может быть обременительным или казаться иррациональным для другой.Поскольку каждая профессиональная роль связана с довольно сложными рабочими процессами, зависящими от конкретной роли, экспертам, выполняющим одну роль, часто бывает трудно понять и представить, как предложения повлияют на другие роли, даже с самыми лучшими намерениями. Исследования передачи информации в организационных условиях показывают, что адаптация к плохим рабочим процессам может привести к увеличению количества прерываний, обходным путям и неформальному или неопределенному общению. Чтобы повысить надежность рабочих процессов при достижении желаемых целей и снизить риск для безопасности пациентов, исследователи рекомендуют структурированные коммуникации и четкие соглашения о ролях и обязанностях при передаче.

    ИТ-системы здравоохранения выявляют многие давние проблемы, связанные с рабочим процессом. Внедрение ИТ-систем здравоохранения на первый взгляд может показаться поверхностным вмешательством в методы работы. Для некоторых это похоже на добавление еще одного этапа документирования в процесс регулярной клинической помощи. Этот шаг может быть разрушительным и обременительным, но он не меняет кардинально способ выполнения работы. Тем не менее, существует множество последующих эффектов на коммуникацию и координацию внутри организации.Предварительный анализ рабочего процесса может помочь предотвратить некоторые из этих непредвиденных последствий. Технологии не обязательно улучшают институциональную эффективность, но могут открывать возможности для улучшения. 42 Ситтиг и его коллеги 38 обнаружили, что, хотя технология важна, важно также учитывать организационные факторы и факторы рабочего процесса до внедрения, иначе преимущества могут быть не реализованы. Для достижения хороших результатов важно междисциплинарное рассмотрение факторов процесса и технологии. 57

    Во многих организациях внедрение ИТ в сфере здравоохранения мотивировано желанием достичь целей, которые сложно решить без структурированной электронной системы. Эти цели включают уменьшение количества ошибок при приеме лекарств за счет штрих-кодирования; улучшение принятия клинических решений с помощью поддержки принятия решений, например предупреждений и напоминаний; измерение показателей клинического качества; активное обращение к пациентам с целью управления здоровьем населения; или просто способность анализировать клиническую информацию, например, путем построения графика артериального давления пациента на основе записей медперсонала.Эти дополнительные ожидания от ИТ-системы для работоспособности означают, что организация может ожидать кардинальных изменений в рабочем процессе - внедрение ИТ для работоспособности является средством инициирования более масштабных мероприятий по улучшению.

    Важно понимать, что ИТ-системы здравоохранения имеют встроенное представление о том, как что-то делается, на самом деле, им присущ рабочий процесс, который может или не может соответствовать рабочему процессу организации. Рассмотрим случай CPOE. Давайте опишем рабочий процесс как серию задач, связанных в хронологическом порядке, которые требуют организационных ресурсов.Логическая модель в ИТ-системе здравоохранения обычно выглядит примерно так:

    1. Поставщик вводит заказ.

    2. Аптекарь проверяет заказ.

    3. Заказ доставлен в пункт обслуживания.

    4. Медсестра ведет заказ.

    В этом совершенно разумном предположении о том, как все работает, следует отметить два момента. Во-первых, рабочий процесс очень линейный.Будет очень важно понять, что произойдет, если эта линейность каким-либо образом нарушится. Например, если фармацевт не может проверить заказ, будет ли система предотвращать «выпуск» заказа до тех пор, пока этот шаг не будет выполнен? Гибкость в рамках линейного рабочего процесса очень важна для бесперебойной работы такой сложной сервисной организации, как медицинское учреждение. Практикующие специалисты несут ответственность за то, чтобы ИТ-система здравоохранения корректно реагировала на изменение рабочего процесса, чтобы не поставить под угрозу лечение пациентов.Во-вторых, следует отметить, что рабочий процесс в системе отражает только один из способов оказания медицинской помощи в организации. Например, во многих учреждениях интенсивной терапии лекарства необходимо вводить быстро, до любого взаимодействия с системой CPOE. Практикующим специалистам также следует спросить, отражают ли внедряемые ими ИТ-системы здравоохранения все основные рабочие процессы в их организации.

    Когда новая ИТ-система здравоохранения или новая технология не могут приспособиться к реальным рабочим процессам организации, взаимодействие с технологией становится для организации большей нагрузкой, чем требуется.По сути, существует «способ работы мира», а затем «способ, которым компьютер думает, что мир работает», и постоянная ответственность пользователей системы заключается в том, чтобы согласовать эти два мировоззрения. Фактически, внедрение ИТ-систем здравоохранения в организациях представляет собой такую ​​проблему, что, по оценкам Управления национального координатора ИТ-служб здравоохранения, до 30 процентов всех внедрений терпят неудачу. 58 Продуманное построение рабочего процесса, присущего технологии, может облегчить принятие технологии. 59 , 60

    Перед внедрением информационных технологий в среду здравоохранения важно иметь представление о процессах и информационных потоках. Кроме того, важно учитывать различные роли в разных отделах и рассматривать идеи из разных источников. 22 У каждого отдела и роли может быть своя точка зрения на встречу и ее необходимые элементы. 36 , 61 Кроме того, многие организации имеют множество неявных предположений и обменов информацией, которые не могут быть задокументированы в традиционном анализе.Таким образом, важно учитывать несколько источников данных, чтобы получить более полное представление о рабочем процессе и процессах. 36

    В Соединенных Штатах больницы, как правило, организованы по функциям. По этой причине рабочий процесс также организован вокруг этих функций. Информационные системы были разработаны для этих функций и были разработаны для удовлетворения потребностей конкретного отдела. Однако уход за пациентом осуществляется в более широком смысле. Таким образом, эти функции необходимо интегрировать. 20 При проведении оценки рабочего процесса важно учитывать, как рабочий процесс функционирует в настоящее время и как он может измениться, чтобы улучшить уход за пациентами и уменьшить количество ошибок во всей системе. 20 , 62 Кроме того, этот вид анализа может помочь найти недостатки в процессе, для которых можно использовать информационные технологии. 20

    На самом деле многие медицинские бригады преуспевают, даже если рабочие процессы плохо спроектированы. Практикующие врачи понимают клинические потребности пациентов.Медицинские работники часто идут на героические поступки, чтобы убедиться, что все делается правильно. Когда возникает проблема, большинство врачей без колебаний поднимут трубку, выполнят поручение или сделают все необходимое для обеспечения хорошего ухода. Однако ресурсы клиницистов не безграничны. Когда медсестры, как и все люди, устают, они могут забыть, когда их спешат, они могут забыть сделать все необходимое. 63 Эти проблемы могут усугубляться ИТ-системой здравоохранения, которая, кажется, не понимает, что хотят делать врачи - иногда потому, что рабочие процессы в ИТ-системе здравоохранения не соответствуют таковым в реальной организации.В основополагающей работе над клинической ошибкой медицинское сообщество признало, что большинство ошибок является результатом систематических недостатков. 64 Хорошие рабочие процессы помогают практикующим врачам убедиться в том, что система ведет себя так, чтобы поддерживать высокое качество медицинской помощи. Медсестры-информатики могут работать со своими коллегами, чтобы применить некоторые принципы, изложенные в литературе, на практике.

    Результаты исследований

    Разработка рабочего процесса - трудная задача из-за сложности большинства организаций здравоохранения и разделения труда на роли экспертов.Медицинские организации - это обслуживающие организации, которые очень гибки и взаимозависимы в ответ на динамичные потребности пациентов. Для многих рабочих процессов установленный рабочий процесс эволюционировал с течением времени в соответствии с типом задач и доступных ресурсов и не был явно рассмотрен или разработан. Изменения в организационном рабочем процессе - это возможность продумать, как медицинская бригада может надежно обеспечить качественный уход за пациентом в различных обстоятельствах.

    Исследование проблем рабочего процесса может быть очень полезным из-за его близости к реальным операционным задачам.Участники исследования часто испытывают сильное разочарование по поводу своей текущей ситуации и хотят получить помощь в осмыслении сложных организационных эффектов. Исследование часто начинается с теоретической модели, которая помогает определить проблемное пространство, например, концептуализации структуры, процесса и результатов 65 или задач, участников и информации. 66 Модель может быть введена в действие с помощью компьютерного моделирования и использована для представления конкретных проблем.

    В поддержку деятельности по проектированию рабочих процессов были разработаны инструменты компьютерного моделирования, которые помогают лицам, принимающим решения, составить карту своих организационных ролей и понять влияние различных вариантов рабочего процесса. 67–69 Модели рабочих процессов показывают траектории поставщиков медицинских услуг, пациентов и информации. Представляя рабочий процесс в доступной для других форме, менеджеры и исследователи могут определить, где могут возникнуть проблемы, и разработать инструменты для их предотвращения.При моделировании рабочего процесса также полезно определять роли и обрисовывать в общих чертах, как медицинская бригада понимает свои рабочие функции и рабочие процессы.

    Для ИТ-отдела здравоохранения проектирование рабочего процесса особенно сложно, поскольку многие предположения о рабочем процессе являются неявными. Разработчики ИТ-систем получают пользу от разговоров со своими пользователями, чтобы понять, как в организации предоставляется клиническая помощь. Без участия пользователей возникает соблазн применить одни и те же рабочие процессы к разным организациям. Многие проблемы можно легко решить с помощью небольших изменений в пользовательском интерфейсе или правилах поддержки принятия клинических решений - изменений, которые очень трудно предсказать заранее.Хотя некоторые проблемы можно решить путем настройки ИТ-системы здравоохранения, другие проблемы решить сложнее. ИТ-система здравоохранения может просто выявить скрытые проблемы со старым рабочим процессом. По мере того как все больше организаций приступают к крупномасштабному внедрению ИТ для здравоохранения, срочно требуется масштабируемый метод учета рабочих процессов, чтобы новые ИТ-системы для здоровья не причиняли вреда. 70 Когда проблемы были обнаружены в ходе бесед, наблюдений, моделирования и других методов, исследователи имеют возможность применить устоявшиеся методы улучшения качества при разработке рабочего процесса.На сегодняшний день исследования основывались на специальных методах для улучшения после изучения рабочего процесса, и есть возможности применить структурированные методы, чтобы помочь организации реагировать на открытия рабочего процесса.

    Многие из рассмотренных исследовательских статей были посвящены описательным тематическим исследованиям. В некоторых исследованиях использовался подход обоснованной теории. В нескольких статьях использовалась концептуальная основа для определения результатов. Хотя исследования обслуживающих организаций были применены к организациям здравоохранения, еще предстоит проделать большую работу по определению того, чем работа в сфере здравоохранения отличается от других отраслей, в частности, чтобы понять, можно ли обобщить результаты запросов в других областях, таких как производство, на здравоохранение.Кроме того, необходимы исследования, чтобы продемонстрировать связь между показателями эффективности и рабочим процессом. 71 Медсестры-исследователи имеют возможность взять исследования, которые были проведены на сегодняшний день, и применить их в более широком масштабе. Большая часть проделанной работы описывает конкретные усилия по внедрению или отдельный отдел. Применяя системный подход к организационному рабочему процессу, можно улучшить координацию ухода за пациентами на всем протяжении их пребывания.

    Расписания | Zoho Creator Help

    Расписания позволяют создавать действия по времени без какого-либо участия пользователя.Эти ограниченные по времени действия могут выполняться периодически в зависимости от значений даты и времени, представленных в вашей форме, или в фиксированные дату и время.

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

    Есть два экземпляра, в которых вы можете запускать расписание в Zoho Creator. Это:

    • В определенную дату и время - Выполнить рабочий процесс в определенную дату и время
    • В поле даты в форме - Выполнить рабочий процесс на основе поля даты в вашей форме

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

    Действия, которые вы можете выполнять по расписанию, перечислены ниже:

    • Уведомление по электронной почте и SMS: Отправить уведомление по электронной почте или SMS в запланированный день. Учить больше.
    • Доступ к данным: Добавить, обновить или удалить запись в форме на основе запланированной даты.
    • Настраиваемое действие: Предопределенные действия в большинстве случаев решают задачу. Тем не менее, есть ситуации, когда вы можете написать сценарии для выполнения задачи. Учить больше.

    Свойства настраиваемого расписания

    Свойства расписания будут отображены, когда вы щелкните значок в правом верхнем углу вашего построителя:

    • Имя рабочего процесса: отображает имя вашего расписания. Вы сможете его переименовать.
    • По дате: отображает дату вашего расписания. Вы сможете сбросить дату.
    • Время: отображает время, в которое выполняется ваше расписание. Вы сможете сбросить время.
    • Выполнить: отображает периодичность вашего расписания.Вы сможете переназначить периодичность интервалов, с которыми должно выполняться ваше расписание.
    • Часовой пояс: отображает часовой пояс, в котором выполняется расписание. Этот часовой пояс обычно является часовым поясом, который вы назначили своему приложению. Создаваемые вами расписания будут работать в одном часовом поясе. Если вы измените часовой пояс своего приложения, изменение вступит в силу только для новых расписаний, которые вы создадите после этого. Вы сможете изменить часовой пояс отдельных расписаний, используя поле свойств или ds, и это изменение вступит в силу только для этого конкретного расписания.

    Свойства расписания формы

    В дополнение к свойствам, перечисленным выше, расписание формы включает еще несколько свойств, основанных на атрибутах, входящих в состав: