Skip to content

Commit

Permalink
Updating to github actions (#12)
Browse files Browse the repository at this point in the history
* Updating to github actions
 - testing the PR build
 - testing and releasing an exp version of the jar via Java 15
 - making a stable release
Also updated the plugin version nd the min GoCD version to 20.9.0
* Update mockito nd jupiter dependencies to support java 15
* Fix the test for validation
 - Java has fixed the NPE exception to provide the exact line and variable which is null
   Earlier, e.getMessage() would be null but now it specified which variable nd which method threw it.
  • Loading branch information
kritika-singh3 authored Nov 12, 2020
1 parent 21fcf8c commit 52366fa
Show file tree
Hide file tree
Showing 5 changed files with 93 additions and 7 deletions.
18 changes: 18 additions & 0 deletions .github/workflows/pr_workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle

name: Testing For PRs

on: [ pull_request ]

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 15
- name: Build with Gradle
run: ./gradlew assemble check
33 changes: 33 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle

name: Create Stable Release

# Controls when the action will run. Workflow runs when manually triggered using the UI
# or API.
on:
workflow_dispatch:
# Inputs the workflow accepts.
inputs:
prerelease:
description: 'The release should be an experimental release'
default: 'NO'
required: true

jobs:
build_and_release:
runs-on: ubuntu-latest
env:
GITHUB_USER: "gocd"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
PRERELEASE: "${{ github.event.inputs.prerelease }}"
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 15
- name: Release
run: ./gradlew verifyExpRelease githubRelease
36 changes: 36 additions & 0 deletions .github/workflows/test_and_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle

name: Test and Build

on:
push:
branches: [ master ]

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 15
- name: Test with Gradle
run: ./gradlew assemble check
previewGithubRelease:
needs: test
runs-on: ubuntu-latest
env:
GITHUB_USER: "gocd"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 15
- name: Test with Gradle
run: ./gradlew githubRelease
8 changes: 4 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,16 @@ project.ext.versions = [
joda : '2.9.4',
azure : '1.17.0',
freemarker : '2.3.28',
junitJupiter: '5.3.2',
junitJupiter: '5.7.0',
hamcrestLib : '1.3',
mockito : '3.0.0',
mockito : '3.6.0',
jsonAssert : '1.5.0'
]

gocdPlugin {
id = 'com.thoughtworks.gocd.elastic-agent.azure'
pluginVersion = '1.0.0'
goCdVersion = '20.5.0'
pluginVersion = '1.1.0'
goCdVersion = '20.9.0'
name = 'GoCD Elastic Agent Plugin for Azure'
description = 'GoCD Elastic Agent Plugin for Azure allows efficient usage of Azure instances'
vendorName = 'ThoughtWorks, Inc.'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@
import java.util.Map;

import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.hasEntry;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.*;
import static org.junit.jupiter.api.Assertions.assertTrue;

class MemoryMetadataTest {
Expand All @@ -40,6 +39,6 @@ void shouldValidateMemoryBytes() {
void shouldValidateMemoryBytesWhenRequireField() {
Map<String, String> validate = new MemoryMetadata("Disk", true).validate(null);
assertThat(validate.size(), is(1));
assertThat(validate, hasEntry("Disk", "Disk must not be blank."));
assertThat(validate.get("Disk"), containsString("Disk must not be blank."));
}
}

0 comments on commit 52366fa

Please sign in to comment.