Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: migrate to GitHub Actions #1142

Merged
merged 18 commits into from
Nov 22, 2021
Merged
42 changes: 42 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Release
on:
push:
tags:
- '*'
workflow_dispatch:

jobs:
release:
name: Release
runs-on: ubuntu-latest
steps:
- name: Checkout sendgrid-csharp
uses: actions/checkout@v2

- name: Setup .NET Core SDK
uses: actions/[email protected]
with:
dotnet-version: '3.1.x'

- name: Publish package to NuGet
run: |
make release
dotnet nuget push **/*.nupkg -k ${{ secrets.NUGET_API_KEY }} -s https://api.nuget.org/v3/index.json --skip-duplicate

notify-on-failure:
name: Slack notify on failure
if: ${{ failure() }}
needs: [ release ]
runs-on: ubuntu-latest
steps:
- uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: 'danger'
SLACK_ICON_EMOJI: ':github:'
SLACK_MESSAGE: ${{ format('Failed to release {1}{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
SLACK_TITLE: Release Failure
SLACK_USERNAME: GitHub Actions
SLACK_MSG_AUTHOR: twilio-dx
SLACK_FOOTER: Posted automatically using GitHub Actions
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
MSG_MINIMAL: true
49 changes: 49 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Tests
on:
push:
branches: [ '*' ]
pull_request:
branches: [ main ]
schedule:
# Run automatically at 8AM PST Monday-Friday
- cron: '0 15 * * 1-5'
shwetha-manvinkurke marked this conversation as resolved.
Show resolved Hide resolved
workflow_dispatch:

jobs:
tests:
name: Run Tests
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Checkout sendgrid-csharp
uses: actions/checkout@v2
with:
fetch-depth: 0

- name: Setup .NET Core SDK
uses: actions/[email protected]
with:
dotnet-version: '3.1.x'

- run: dotnet build -c Release
- name: Build & Test
run: make test-docker release
eshanholtz marked this conversation as resolved.
Show resolved Hide resolved
- run: bash <(curl -s https://codecov.io/bash)
shwetha-manvinkurke marked this conversation as resolved.
Show resolved Hide resolved

notify-on-failure:
name: Slack notify on failure
if: ${{ failure() && github.ref == 'refs/heads/main' && github.event_name != 'pull_request' }}
needs: [ tests ]
runs-on: ubuntu-latest
steps:
- uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: 'danger'
SLACK_ICON_EMOJI: ':github:'
SLACK_MESSAGE: ${{ format('Failed running build on {1}{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
SLACK_TITLE: Build Failure
SLACK_USERNAME: GitHub Actions
SLACK_MSG_AUTHOR: twilio-dx
SLACK_FOOTER: Posted automatically using GitHub Actions
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
MSG_MINIMAL: true
32 changes: 0 additions & 32 deletions .travis.yml

This file was deleted.

1 change: 0 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ RUN apt-get update \
COPY prism/prism/nginx/cert.crt /usr/local/share/ca-certificates/cert.crt
RUN update-ca-certificates

WORKDIR /app
COPY . .

RUN make install
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
![SendGrid Logo](twilio_sendgrid_logo.png)

[![BuildStatus](https://travis-ci.com/sendgrid/sendgrid-csharp.svg?branch=main)](https://travis-ci.com/sendgrid/sendgrid-csharp)
[![BuildStatus](https://github.com/sendgrid/sendgrid-csharp/actions/workflows/test.yml/badge.svg)](https://github.com/sendgrid/sendgrid-csharp/actions/workflows/test.yml)
[![NuGet](https://img.shields.io/nuget/v/SendGrid.svg)](https://www.nuget.org/packages/SendGrid)
[![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
[![Twitter Follow](https://img.shields.io/twitter/follow/sendgrid.svg?style=social&label=Follow)](https://twitter.com/sendgrid)
Expand Down
1 change: 0 additions & 1 deletion SendGrid.sln
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
.editorconfig = .editorconfig
.env_sample = .env_sample
.gitignore = .gitignore
.travis.yml = .travis.yml
CHANGELOG.md = CHANGELOG.md
CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md
CONTRIBUTING.md = CONTRIBUTING.md
Expand Down
4 changes: 2 additions & 2 deletions tests/SendGrid.Tests/Integration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4928,7 +4928,7 @@ public async Task TestSuppressionSpamReportEmailGet()
{
var sg = GetClient("200");
var email = "test_url_param";
var response = await sg.RequestAsync(method: SendGridClient.Method.GET, urlPath: "suppression/spam_report/" + email);
var response = await sg.RequestAsync(method: SendGridClient.Method.GET, urlPath: "suppression/spam_reports/" + email);
Assert.Equal(HttpStatusCode.OK, response.StatusCode);
}

Expand All @@ -4937,7 +4937,7 @@ public async Task TestSuppressionSpamReportEmailDelete()
{
var sg = GetClient("204");
var email = "test_url_param";
var response = await sg.RequestAsync(method: SendGridClient.Method.DELETE, urlPath: "suppression/spam_report/" + email);
var response = await sg.RequestAsync(method: SendGridClient.Method.DELETE, urlPath: "suppression/spam_reports/" + email);
Assert.Equal(HttpStatusCode.NoContent, response.StatusCode);
}

Expand Down
11 changes: 0 additions & 11 deletions tests/SendGrid.Tests/RequiredFilesExistTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,6 @@ public void checkGitIgnoreExists()
Assert.True(File.Exists("./.gitignore"));
}

// ./.travis.yml
public void checkTravisExists()
{
Assert.True(File.Exists("./.travis.yml"));
}

// ./.codeclimate.yml
public void checkCodeClimateExists()
{
Assert.True(File.Exists("./.codeclimate.yml"));
}

// ./CHANGELOG.md
public void checkChangelogExists()
Expand Down