Skip to content

InjectiveLabs/github-fe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 

Repository files navigation

GitHub Frontend Actions

A collection of reusable GitHub Actions for injective's frontend development workflows. These actions are designed to be shared across multiple repositories to reduce duplication and maintain consistency.

Available Actions

A comprehensive action that handles deployment notifications with Jira ticket extraction and Slack integration.

Features:

  • Automatic Jira ticket extraction from commit messages
  • Smart Slack threading to avoid duplicate messages
  • Jira ticket tracking and deduplication
  • Pre-configured for Injective Labs (IL- tickets, test-slack channel)
  • Repository branding in Slack messages
  • Staging URL integration
  • Branch-specific deployment tracking

Use Case: Perfect for staging deployment workflows that need to notify teams and track Jira tickets.

A specialized action for production deployment notifications with release notes integration.

Features:

  • Production-specific messaging with @here notifications
  • Release notes integration
  • Smart handling of rebuilds vs new deployments
  • GitHub Actions run linking
  • Clean, professional production messaging

Use Case: Essential for production deployment workflows that need to notify teams about live releases.

An intelligent action that generates comprehensive release notes from git commits with automatic PR linking.

Features:

  • Automatic version incrementing (patch version)
  • Smart PR commit detection and linking
  • Clean commit message formatting
  • Author attribution with GitHub links
  • Bugsnag version computation for error tracking
  • Handles edge cases like no commits or merge commits

Use Case: Essential for automated release workflows that need professional release notes with proper attribution.

A utility action that automatically bumps package versions and commits changes to a repository.

Features:

  • Automatic package dependency updates
  • Configurable folder path support
  • Cross-repository package bumping
  • Safe commit handling with change detection
  • Configurable branch targeting
  • Built-in delay for CI/CD coordination

Use Case: Perfect for monorepos or multi-repository setups where packages need to be updated across different repositories.

How to Use

1. Reference Actions in Your Workflows

Staging Deployment Notification:

# In your repository's .github/workflows/ file
- name: Send deployment notification
  uses: InjectiveLabs/github-fe/actions/fe-staging-notification@master
  with:
    repo: "Mito"
    network: ${{ env.network_display }}
    description: ${{ github.event.inputs.description || 'Staging deployment' }}
    staging_url: ${{ steps.netlify_deploy.outputs.staging_url }}
    slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
    slack-user-token: ${{ secrets.SLACK_USER_TOKEN }}

Production Deployment Notification:

- name: "Notify Slack"
  uses: InjectiveLabs/github-fe/actions/prod-deployment-notification@master
  with:
    project-name: "Mito UI"
    webhook-url: ${{ secrets.PRODUCTION_CHANNEL_WEBHOOK_URL }}
    release-notes: ${{ needs.mainnet-release.outputs.release_notes }}

Release Note Generation:

- name: Generate GitHub Release Notes
  uses: InjectiveLabs/github-fe/actions/release-note@master
  with:
    previous_tag: ${{ env.current_version }}
    repo_url: "https://github.com/MitoFinance/mito-ui"

Package Bump:

- uses: InjectiveLabs/github-fe/actions/package-bump@master
  with:
    gh_token: ${{ secrets.GITHUB_TOKEN }}
    repository_url: "InjectiveLabs/mito-ui"
    repository_branch: "main"
    folder_path: "packages/ui" # Optional

2. Required Secrets

Most actions require specific secrets to be configured in your repository:

  • Slack Integration:
    • SLACK_USER_TOKEN, SLACK_BOT_TOKEN (for fe-staging-notification)
    • PRODUCTION_CHANNEL_WEBHOOK_URL (for prod-deployment-notification)
  • GitHub Integration: GITHUB_TOKEN (for package-bump and release-note)
  • Jira Integration: Pre-configured for Injective Labs (for fe-staging-notification)
  • Deployment Services:
    • NETLIFY_TOKEN, NETLIFY_SITE_ID (for staging deployments)
    • AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_S3_BUCKET, CLOUDFRONT_DISTRIBUTION_ID (for production deployments)
  • Other Services: Check individual action documentation

3. Version Pinning

For production use, pin to specific versions or tags:

- uses: InjectiveLabs/github-fe/actions/[email protected]
- uses: InjectiveLabs/github-fe/actions/[email protected]
- uses: InjectiveLabs/github-fe/actions/[email protected]
- uses: InjectiveLabs/github-fe/actions/[email protected]

License

This repository is licensed under the same license as specified in the LICENSE file.

About

Reusable github actions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published