LFX Actions are a series of tools that can be either ran directly at the CLI or leveraged via GitHub Actions, which automate pulling data from LFX for using with other tools and services. The current list of tools provided is as below:
updateprojects: Pulls hosted project data from a project's landscape and streams in CSV format tostdout.updatetacmembers: Pulls the current list of TAC members from LFX PCC and streams CSV format tostdout.updatetacagendaitems: A tool for TACs that use a GitHub Project for managing their TAC agenda. Streams TAC agenda items in CSV format tostdout..updateclomonitor: Pulls hosted project data from a project's landscape in YAML format tostdoutthat can imported into CLOMonitor.updatecharters: Downloads the Technical Charters for the subprojects of a project identified by--slug, saving them in the current working directory with naming format ofSLUG_charter.updatedecks: Exports Google Slides and Powerpoint decks from Google Drive, saving them in PDF and PPTX format in the current working directory.
You can run any of these commands with the -h flag to see the command line arguments required.
Add the following to a file .github/workflows/updatedatafromlfx.yml
name: Update Data From LFX
on:
issues:
types:
- "labeled"
- "unlabeled"
schedule:
- cron: '0 0 * * *' # set to when you would like this to run
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: jmertic/lfx-tac-actions@6c227fe42b9769a6d1b4460f2e077e35c62bc3a0 # 20260801
with:
# refer to https://github.com/jmertic/lfx-tac-actions/blob/main/action.yml#L3 for the various inputs to set.
env:
token: ${{ secrets.PAT }} # Must be set as a secret for the repo; required access is 'read:discussion, read:org, read:project, repo'
repository: ${{ github.repository }}
ref: ${{ github.ref }}If the build results in data that differs from the current data in the given repository, a pull request is created to apply those changes. This pull request is by default set to be automatically merged only if the following conditions are met.
- The target repository must have Allow auto-merge enabled in settings.
- The pull request base must have a branch protection rule with at least one requirement enabled.
- The pull request must be in a state where requirements have not yet been satisfied. If the pull request is in a state where it can already be merged, the action will merge it immediately without enabling auto-merge.
You can install this tool on your local computer via pipx.
pipx install git+https://github.com/jmertic/lfx-tac-actions.gitSimilarly, you can use the command below to upgrade your local install.
pipx upgrade lfx-tac-actionsAll of the commands referenced above will be available for executing directly.