DEV Community

Cover image for GitHub Actions
Emily
Emily

Posted on • Edited on

3 1

GitHub Actions

Introduction

What is GitHub Action? According to Github, it is a series of commands that can be executed when a special event (defined by user) occurred. The series of commands is put in the context of workflow and every steps can be seen as a job.
This week, I had a chance to explore GitHub Actions for my Shinny-SSG project and it is a great improvement for my application.

Define Workflows

I created my first workflow by using Github's default workflow template for .Net project. Github created a YAML file in the .github/workflows directory inside my git repository. You can read more about it here.
My dotnet.yml file :

name: .NET

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Setup .NET Core 3.1 
      uses: actions/setup-dotnet@v1 
      with: 
       dotnet-version: 3.1.x
    - name: Setup .NET Core 5.0
      uses: actions/setup-dotnet@v1
      with:
       dotnet-version: 5.0.x
    - name: dotnet-format
      run: dotnet tool install -g dotnet-format --version 5.1.225507
    - name: Restore dependencies
      run: dotnet restore shinny-ssg/shinny-ssg.sln
    - name: Build
      run: dotnet build shinny-ssg/shinny-ssg.sln --no-restore 
    - name: Test
      run: dotnet test shinny-ssgTests --no-build --verbosity normal
Enter fullscreen mode Exit fullscreen mode

Testing

Later, I tested my Github Actions by making a pull request to my origin repository. It worked like a charm and it denied merging if my PR did not pass the test.
Image description

I also made a PR for my classmate's project. It also worked as expected.

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay