Skip to content

Commit

Permalink
Merge pull request #236 from geotrellis/feature/awf/ci
Browse files Browse the repository at this point in the history
Publish gt-contrib artifacts automatically to SonaType via CircleCI
  • Loading branch information
CloudNiner committed Sep 27, 2019
2 parents de08d90 + 1f3ed5c commit 33bf2ce
Show file tree
Hide file tree
Showing 29 changed files with 542 additions and 256 deletions.
104 changes: 104 additions & 0 deletions .circleci/config.yml
@@ -0,0 +1,104 @@
aliases:
- &restore_sbt_cache
key: sbt-cache-{{ checksum "/tmp/scala_version" }}

- &save_sbt_cache
key: sbt-cache-{{ checksum "/tmp/scala_version" }}-{{ epoch }}
paths:
- "~/.ivy2/cache"
- "~/.sbt"
- "~/.cache/coursier"

- &run_cibuild
- checkout
- run: echo "${SCALA_VERSION}" > /tmp/scala_version
- restore_cache: *restore_sbt_cache
- run:
name: Executing cibuild
command: ./scripts/cibuild
- save_cache: *save_sbt_cache

- &run_cipublish
- checkout
- run: echo "${SCALA_VERSION}" > /tmp/scala_version
- restore_cache: *restore_sbt_cache
- run:
name: "Import signing key"
command: |
echo "${GPG_KEY}" | base64 -d > signing_key.asc && \
gpg --batch \
--passphrase "${GPG_PASSPHRASE}" \
--import signing_key.asc
- run:
name: Executing cipublish
command: ./scripts/cipublish

# Build environments
- &openjdk8-scala2_11_12_environment
machine:
image: ubuntu-1604:201903-01
environment:
SCALA_VERSION: 2.11.12

- &openjdk8-scala2_12_8_environment
machine:
image: ubuntu-1604:201903-01
environment:
SCALA_VERSION: 2.12.8

version: 2
workflows:
version: 2
build:
jobs:
- "openjdk8-scala2.11.12":
filters: # required since `openjdk8-scala2.11.12_deploy` has tag filters AND requires `openjdk8-scala2.11.12`
tags:
only:
- /^(.*)$/
- "openjdk8-scala2.12.8":
filters: # required since `openjdk8-scala2.12.8_deploy` has tag filters AND requires `openjdk8-scala2.12.8`
tags:
only:
- /^(.*)$/
- "openjdk8-scala2.11.12_deploy":
requires:
- "openjdk8-scala2.11.12"
filters:
tags:
only:
- /^(.*)$/
branches:
only:
- develop
- /release\/.*/
- /hotfix\/.*/
- "openjdk8-scala2.12.8_deploy":
requires:
- "openjdk8-scala2.12.8"
filters:
tags:
only:
- /^(.*)$/
branches:
only:
- develop
- /release\/.*/
- /hotfix\/.*/

jobs:
"openjdk8-scala2.11.12":
<<: *openjdk8-scala2_11_12_environment
steps: *run_cibuild

"openjdk8-scala2.12.8":
<<: *openjdk8-scala2_12_8_environment
steps: *run_cibuild

"openjdk8-scala2.11.12_deploy":
<<: *openjdk8-scala2_11_12_environment
steps: *run_cipublish

"openjdk8-scala2.12.8_deploy":
<<: *openjdk8-scala2_12_8_environment
steps: *run_cipublish
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/release.md
@@ -0,0 +1,37 @@
---
name: Release
about: When ready to cut a release
title: Release X.Y.Z
labels: release
assignees: ""
---

- [ ] Start a new release branch:

```bash
$ git flow release start X.Y.Z
```

- [ ] Rotate `CHANGELOG.md` (following [Keep a Changelog](https://keepachangelog.com/) principles)
- [ ] Ensure outstanding changes are committed:

```bash
$ git status # Is the git staging area clean?
$ git add CHANGELOG.md
$ git commit -m "X.Y.Z"
```

- [ ] Publish the release branch:

```bash
$ git flow release publish X.Y.Z
```

- [ ] Ensure that CI checks pass
- [ ] Finish and publish the release branch:
- When prompted, keep default commit messages
- Use `X.Y.Z` as the tag message

```bash
$ git flow release finish -p X.Y.Z
```
24 changes: 14 additions & 10 deletions .github/pull_request_template.md
@@ -1,21 +1,25 @@
# Overview
## Overview

Brief description of what this PR does and why it's important
Brief description of what this PR does, and why it is needed.

## Demo
### Checklist

Optional. Screenshots, etc.
- [ ] Description of PR is in an appropriate section of the CHANGELOG and grouped with similar changes if possible

## Notes
### Demo

Optional. Extra context, ancillary topics, alternative strategies that didn't work out, etc.
Optional. Screenshots, `http` examples, etc.

## Testing Instructions
### Notes

Optional. Include if there's more specifics than "CI tests should pass".
Optional. Ancillary topics, caveats, alternative strategies that didn't work out, anything else.

## Checklist
## Testing Instructions

- [ ] Add entry to CHANGELOG.md
- How to test this PR
- Prefer bulleted description
- Start after checking out this branch
- Include any setup required, such as bundling scripts, restarting services, etc.
- Include test case, and expected output

Closes #XXX
27 changes: 0 additions & 27 deletions .travis.yml

This file was deleted.

9 changes: 0 additions & 9 deletions .travis/build-and-test-docker.sh

This file was deleted.

6 changes: 0 additions & 6 deletions .travis/build-and-test.sh

This file was deleted.

10 changes: 0 additions & 10 deletions .travis/slickTestDB.sh

This file was deleted.

5 changes: 5 additions & 0 deletions CHANGELOG.md
Expand Up @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

### Changed

- Artifacts are published to https://oss.sonatype.org automatically via CircleCI
- The `bintray` resolver in build.sbt is no longer necessary as of this release
- Commits to the develop branch are available as SNAPSHOT releases
- Move RasterSources into GeoTrellis core, only RasterSources effects are present in this repository now.

## [3.17.1] - 2019-08-26
Expand Down
28 changes: 0 additions & 28 deletions Dockerfile.benchmark

This file was deleted.

28 changes: 0 additions & 28 deletions Makefile.benchmark

This file was deleted.

12 changes: 4 additions & 8 deletions README.md
@@ -1,26 +1,22 @@
# GeoTrellis Contributions repo

[![Build Status](https://travis-ci.org/geotrellis/geotrellis-contrib.svg?branch=master)](https://travis-ci.org/geotrellis/geotrellis-contrib)
[![CircleCI](https://circleci.com/gh/geotrellis/geotrellis-contrib/tree/develop.svg?style=svg)](https://circleci.com/gh/geotrellis/geotrellis-contrib/tree/develop)

This is a repository is a place to put extra [GeoTrellis](https://github.com/locationtech/geotrellis) projects, that were not included into the main repo for various reasons.

- Project names should be of the form `geotrellis-contrib-{feature}`
- Project versions should start with `0.0.1` and not be tied to GeoTrellis version.
- Project publishing will happen on BinTray

- Project names should be of the form `geotrellis-contrib-{feature}`
- Project versions should start with `0.0.1` and not be tied to GeoTrellis version.
- Project publishing will happen on SonaType

## Usage

via `sbt`:

```scala
resolvers += "Azavea Public Builds" at "https://dl.bintray.com/azavea/geotrellis"
...
libraryDependencies ++= Seq(
"com.azavea.geotrellis" %% "geotrellis-contrib-vlm" % "X.Y.Z",
"com.azavea.geotrellis" %% "geotrellis-contrib-gdal" % "X.Y.Z"
)
```

Go to [releases](https://github.com/geotrellis/geotrellis-contrib/releases) to see available versions.

30 changes: 0 additions & 30 deletions RELEASING.md

This file was deleted.

0 comments on commit 33bf2ce

Please sign in to comment.