Skip to content

vareversat/github-actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

github-actions πŸš€

A curated collection of reusable GitHub Actions workflows organized by programming language and technology stack, plus general-purpose workflows for common development tasks.

Repository Structure πŸ“

.
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       β”œβ”€β”€ go.test.yml
β”‚       β”œβ”€β”€ go.lint.yml
β”‚       β”œβ”€β”€ ...
β”‚       β”œβ”€β”€ flutter.test.yml
β”‚       β”œβ”€β”€ flutter.build.yml
β”‚       β”œβ”€β”€ ...
β”‚       β”œβ”€β”€ general.release.yml
β”‚       β”œβ”€β”€ general.deploy.yml
β”‚       β”œβ”€β”€ ... 
|       β”œβ”€β”€ [language/category].[command].yml

Naming Convention πŸ“

All workflow files follow this naming pattern:

[language/category].[command].yml

For example:

  • go.test.yml
  • flutter.test.yml
  • general.release.yml

Usage πŸ’‘

To use these workflows in your projects, add a new workflow file in your repository's .github/workflows directory with the following structure:

name: Call a reusable workflow

on:
  workflow_dispatch:
  pull_request:

jobs:
  call-workflow:
    uses: vareversat/github-actions/.github/workflows/go.lint.yml@main
    with:
      # Add any required inputs here
      parameter1: value1
      parameter2: value2

For more detailed information about reusing workflows, check out the GitHub documentation on reusable workflows.

Available Workflows βš™οΈ

Docker

  • docker.build-push.yml: Docker build & push images into Github registry

Go

  • go.lint.yml: Lint Go code
  • go.test.yml: Run Go tests
  • go.list.yml: List Go dependencies
  • go.build.yml: Build Go binaries on Mac, Win & Linux OS + upload artifacts

Fastlane

  • fastlane.lane.yml: Compute the lane name based on the last push type

Flutter

  • flutter.analyze.yml: Run Flutter analyzes
  • flutter.format.yml: Run Flutter format
  • flutter.test.yml: Run Flutter tests
  • flutter.build.yml: Build Flutter applications

Firebase

  • firebase.function.lint.yml: Lint Typescript code
  • firebase.function.publish.yml: Build and deploy functions

General Purpose

  • global.release.yml: Create project releases
  • global.page.yml: Publish Github page
  • global.release.info.yml: Generate the version and revision name based on the current Git branch

[Other sections will be added as more workflows are included]

Contributing 🀝

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

About

πŸ€– All my personal Github actions

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •