Gthub action for Project (beta) management. Allows to update fields

Overview

titoportas/update-project-fields

Use this action to automatically update GitHub project (beta) item fields. Note that this action does not support GitHub projects (classic).

The main difference between this lib and others is that you can use a PAT with repo and project scopes instead of org scope.

Usage

See action.yml for metadata that defines the inputs, outputs, and runs configuration for this action.

For more information about workflows, see Using workflows.

Create a workflow that will be triggered on Issues or Pull Requests events. It is highly recommended to use add-to-project action before in order to find/create an item in your project and then send the itemId as input to update-project-fields.

Once you've configured your workflow, save it as a .yml file in your target Repository's .github/workflows directory.

Example

name: Create and/or Update edited issues to my project

on:
  issues:
    types:
      - edited

jobs:
  create-update-project:
    name: Create/update project issue
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/[email protected] # This adds the issue to the project
        with:
          project-url: https://github.com/users/titoportas/projects/2
          github-token: ${{ secrets.GHPROJECT_SECRET }}
        id: add-project
      - uses: titoportas/[email protected]
        with:
          project-url: https://github.com/users/titoportas/projects/2
          github-token: ${{ secrets.GHPROJECT_SECRET }}
          item-id: ${{ steps.add-project.outputs.itemId }} # Use the item-id output of the previous step
          field-keys: TextField,NumberField,FinishedAt,Size,IterationField
          field-values: foo,123,2022-09-01,🐋 X-Large,[1]

Inputs

  • project-url (required) is the URL of the GitHub project to add issues to. eg: https://github.com/orgs|users/<ownerName>/projects/<projectNumber>
  • github-token (required) is a personal access token with repo and project scopes. See Creating a PAT and adding it to your repository for more details
  • item-id (required) project item id to be updated. Important: this id is not the issue/pull_request number.
  • field-keys (required) the github project field names separated with ,.
  • field-values (required) the github project field values associated to the field-keys separated with ,. If the key has values with special characters (eg: ✅ Done) you must include them.

Creating a PAT and adding it to your repository

Development

To get started contributing to this project, clone it and install dependencies. Note that this action runs in Node.js 16.x, so we recommend using that version of Node (see "engines" in this action's package.json for details).

> git clone https://github.com/titoportas/update-project-fields.git
> cd update-project-fields
> npm install

License

The scripts and documentation in this project are released under the MIT License

Special mentions

I want to say thanks to the authors and contributors of add-to-project and project-update. This Github action is based on both github projects.

You might also like...

DatoCMS plugin: Translate fields

DatoCMS plugin: Translate fields

DatoCMS plugin: Translate fields This DatoCMS plugin gives you the ability to translate structured-text, string and text fields. This plugin is an add

Nov 8, 2022

Functions and objects that make it easier to add fields to Portable Text editors for accessibility meta information, like language changes or abbreviations.

Porta11y Porta11y is a collection of accessibility-focused annotations, decorators and validators for Sanity’s Portable Text editor. Portable Text is

Aug 25, 2022

A simple easy to use vanilla JavaScript library for creating input fields that accept multiple email addresses

MeiMei - Multiple Email Input MeiMei: A simple easy to use vanilla JavaScript library for creating input fields that accept multiple email addresses.

Apr 13, 2022

Create beautiful, functional and extensive (Multi) Select Fields with pure, vanilla JavaScript.

tail.select.js - Beautify Select Fields (formerly tail.select) Replace and Improve your HTML select fields with style and without jQuery! The tail.s

Dec 30, 2022

Incredible resources (with links) to help up-skill yourselves on various fields. Resources like programming, designing, engineering and much more and completely Open Source.

Incredible resources (with links) to help up-skill yourselves on various fields. Resources like programming, designing, engineering and much more and completely Open Source.

Shiryoku Incredible resources (with links) to help up-skill yourselves on various fields. Resources like programming, designing, engineering and much

Dec 15, 2022

A block preview that directly displays the block fields, including tabs.

A block preview that directly displays the block fields, including tabs.

Kirby Block Preview Fields This plugin for Kirby 3 displays the block fields directly in the block preview, including tabs. Inspired by the Kirby Fiel

May 10, 2023

The Frontend of Escobar's Inventory Management System, Employee Management System, Ordering System, and Income & Expense System

The Frontend of Escobar's Inventory Management System, Employee Management System, Ordering System, and Income & Expense System

Usage Create an App # with npx $ npx create-nextron-app my-app --example with-javascript # with yarn $ yarn create nextron-app my-app --example with-

Jan 2, 2023

ScraperTools BETA Version 1.0.1

ScraperTools Official ScraperTools NPM Package Get Started Via NPM: $ npm install scraper-tools Cara Menggunakan const scrapertools = require('scraper

Sep 28, 2022

Add issues to projects (beta)

Add Issue/PR to Project (BETA) ➕ This GitHub action adds issues or pull requests to a Project (beta). Usage Create a workflow (eg: .github/workflows/o

Aug 12, 2022
Releases(v0.1.0)
  • v0.1.0(Sep 6, 2022)

    What's Changed

    • First update-project version by @titoportas in https://github.com/titoportas/update-project-fields/pull/1
    • [Documentation] Documentation added by @titoportas in https://github.com/titoportas/update-project-fields/pull/2
    • [Trivial] Updated Readme by @titoportas in https://github.com/titoportas/update-project-fields/pull/3

    New Contributors

    • @titoportas made their first contribution in https://github.com/titoportas/update-project-fields/pull/1

    Full Changelog: https://github.com/titoportas/update-project-fields/commits/v0.1.0

    Source code(tar.gz)
    Source code(zip)
Owner
null
My terrible attempt at a promposal. Update: She said yes LMFAO Update Update: I got friendzoned right after 😭

TypeScript Next.js example This is a really simple project that shows the usage of Next.js with TypeScript. Deploy your own Deploy the example using V

John Li (Tet) 7 Oct 27, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till mÀnniskor pÄ flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
The LMS (Life Management System) is a free tool for personal knowledge management and goal management based on Obsidian.md.

README Documentation | äž­æ–‡ćžźćŠ© The LMS (Life Management System) is a tool for personal knowledge management and goal management based on Obsidian.md. It

null 27 Dec 21, 2022
Easy view and filter all follows and following. Auto update by GitHub Action.

?? List All Followers And Following Easy view and filter all follows and following. Auto update by GitHub Action. Since GitHub's default follows and f

Yuri 10 Dec 28, 2022
This project is in developer-preview status and will reach the beta in 2023 Q1

rescoped.io This project is in developer-preview status and will reach the beta in 2023 Q1. Currently, the datagrid is under massive refactoring, and

avodaq AG 7 Dec 30, 2022
A microverse project that allows users to update tasks from a list using javascript modules

ToDo-list App This is a microverse project that allows users to update tasks from a list using javascript modules Our goal here is to Build a book app

faith Usor 5 Oct 19, 2022
An Obsidian plugin to grab all yaml fields from all files into a dataframe

Metadataframe Metadataframe allows you to get all metadata from your vault into CSV file. With CSV in-hand, you can do any data analysis you want with

null 7 Sep 15, 2022