Skip to content
This repository has been archived by the owner on May 13, 2022. It is now read-only.

Commit

Permalink
Merge branch 'main' into custom-reactors-support
Browse files Browse the repository at this point in the history
  • Loading branch information
Silas Davis authored Apr 5, 2021
2 parents d562fb8 + b193c90 commit b059615
Show file tree
Hide file tree
Showing 917 changed files with 150,526 additions and 25,895 deletions.
131 changes: 0 additions & 131 deletions .circleci/config.yml

This file was deleted.

2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*.pb.go linguist-generated
yarn.lock linguist-generated
28 changes: 15 additions & 13 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
# Contributing to `burrow`:
Forked from Docker's [contributing guidelines](https://github.com/docker/docker/blob/master/CONTRIBUTING.md)
Forked from Docker's [contributing guidelines](https://github.com/docker/docker/blob/main/CONTRIBUTING.md)

## Developer Certificate of Origin

Please always include "signed-off-by" in your commit message and note this constitutes a developer certification you are contributing a patch under Apache 2.0. Please find a verbatim copy of the Developer Certificate of Origin in this repository [here](.github/DEVELOPER_CERTIFICATE_OF_ORIGIN.md) or on [developercertificate.org](https://developercertificate.org/).

## Branches and releases

All development happens on 'main'. Any other branches should be considered temporary and should have a corresponding pull request where they are the source to help keep track of them. Such branches can be marked WIP/draft.

There is a special branch called 'prereleae' that is solely used to trigger a build of the JS library and docker images with a special prerelease tag based on the commit hash. This can be triggered by force pushing to 'prerelease'. If you would like a prerelease build please ask a maintainer (via an issue or on https://chat.hyperledger.org/channel/burrow) to force push for you. Since this branch may be overwritten at any time it should never be the only home for durable changes.

Commits tagged with a 'v'-prefixed semver tag like `v0.11.1` are official releases and will trigger builds of binaries, JS library, and docker images in CI. We will try to make these regularly but will sometimes batch up a few changes and dependency upgrades (particularly Tendermint).

## Bug Reporting

A great way to contribute to the project is to send a detailed report when you encounter an issue. We always appreciate a well-written, thorough bug report, and will thank you for it!
Expand All @@ -17,15 +25,15 @@ Our [ISSUE_TEMPLATE.md](ISSUE_TEMPLATE.md) will autopopulate the new issue.

## Contribution Tips and Guidelines

### Pull requests are always welcome (to `develop` rather than `master`).
### Pull requests are always welcome (always based on the `main` branch)

Not sure if that typo is worth a pull request? Found a bug and know how to fix it? Do it! We will appreciate it. Any significant improvement should be documented as a GitHub issue or discussed in [The Marmot Den](https://slack.monax.io) Slack community prior to beginning.
Not sure if that typo is worth a pull request? Found a bug and know how to fix it? Do it! We will appreciate it.

We are always thrilled to receive pull requests (and bug reports!) and we do our best to process them quickly.

## Conventions

Fork the repository and make changes on your fork in a feature branch (branched from develop), create an issue outlining your feature or a bug, or use an open one.
Fork the repository and make changes on your fork in a feature branch, create an issue outlining your feature or a bug, or use an open one.

If it's a bug fix branch, name it something-XXXX where XXXX is the number of the issue.
If it's a feature branch, create an enhancement issue to announce your intentions, and name it something-XXXX where XXXX is the number of the issue.
Expand All @@ -42,22 +50,16 @@ Commit messages must start with a short summary (max. 50 chars) written in the i

Code review comments may be added to your pull request. Discuss, then make the suggested modifications and push additional commits to your feature branch.

Pull requests must be cleanly rebased on top of develop without multiple branches mixed into the PR.
Pull requests must be cleanly rebased on top of main without multiple branches mixed into the PR.

*Git tip:* If your PR no longer merges cleanly, use `git rebase develop` in your feature branch to update your pull request rather than merge develop.

Before you make a pull request, squash your commits into logical units of work using `git rebase -i` and `git push -f`. A logical unit of work is a consistent set of patches that should be reviewed together: for example, upgrading the version of a vendored dependency and taking advantage of its now available new feature constitute two separate units of work. Implementing a new function and calling it in another file constitute a single logical unit of work. The very high majority of submissions should have a single commit, so if in doubt: squash down to one.
*Git tip:* If your PR no longer merges cleanly, use `git rebase main` in your feature branch to update your pull request rather than merge main.

After every commit, make sure the test suite passes. Include documentation changes in the same pull request so that a revert would remove all traces of the feature or fix.

### Merge approval

We use LGTM (Looks Good To Me) in commands on the code review to indicate acceptance.

## Errors and Log Messages Style

TODO

## Coding Style

Unless explicitly stated, we follow all coding guidelines from the Go community. While some of these standards may seem arbitrary, they somehow seem to result in a solid, consistent codebase.
Expand All @@ -68,7 +70,7 @@ It is possible that the code base does not currently comply with these guideline
* All code should follow the guidelines covered in [Effective Go](https://golang.org/doc/effective_go.html) and [Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments).
* Comment the code. Tell us the why, the history and the context.
* Document all declarations and methods, even private ones. Declare expectations, caveats and anything else that may be important. If a type gets exported, having the comments already there will ensure it's ready.
* Variable name length should be proportional to it's context and no longer. noCommaALongVariableNameLikeThisIsNotMoreClearWhenASimpleCommentWouldDo. In practice, short methods will have short variable names and globals will have longer names.
* Variable name length should be proportional to its context and no longer. noCommaALongVariableNameLikeThisIsNotMoreClearWhenASimpleCommentWouldDo. In practice, short methods will have short variable names and globals will have longer names.
* No underscores in package names. If you need a compound name, step back, and re-examine why you need a compound name. If you still think you need a compound name, lose the underscore.
* No utils or helpers packages. If a function is not general enough to warrant its own package, it has not been written generally enough to be a part of a `util` package. Just leave it unexported and well-documented.
* All tests should run with `go test` and outside tooling should not be required. No, we don't need another unit testing framework. Assertion packages are acceptable if they provide real incremental value.
10 changes: 4 additions & 6 deletions .circleci/Dockerfile → .github/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM golang:1.12.6-alpine3.10
FROM golang:1.15-alpine3.13
MAINTAINER Monax <[email protected]>

ENV DOCKER_VERSION "17.12.1-ce"
Expand All @@ -7,7 +7,7 @@ ENV GORELEASER_VERSION "v0.104.1"
# Update remote with 'make push_ci_image'
RUN apk add --update --no-cache \
nodejs \
npm \
yarn \
netcat-openbsd \
git \
openssh-client \
Expand All @@ -21,15 +21,13 @@ RUN apk add --update --no-cache \
docker \
libffi-dev \
openssl-dev \
python-dev \
python3-dev \
py-pip
RUN pip install docker-compose
RUN pip3 install docker-compose
# get docker client
WORKDIR /usr/bin
RUN curl -sS -L https://download.docker.com/linux/static/stable/x86_64/docker-$DOCKER_VERSION.tgz | tar xz --strip-components 1 docker/docker
RUN curl -sS -L https://github.com/goreleaser/goreleaser/releases/download/$GORELEASER_VERSION/goreleaser_Linux_x86_64.tar.gz | tar xz goreleaser
RUN npm install -g mocha
RUN npm install -g mocha-circleci-reporter
ENV CI=true
# Protobuf builds require being in GOPATH (more or less) but this disables module support by default
ENV GO111MODULE=on
Expand Down
12 changes: 0 additions & 12 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Bug Report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the Bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior.

**Expected Behavior**
A clear and concise description of what you expected to happen.

**Technical Details**
- [ ] Burrow Version (docker image tag or branch if built from source)
- [ ] Go Version (if applicable)
- [ ] Docker Version (if applicable)
- [ ] Operating System (osx/windows/linux)

**Additional Context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature Request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
51 changes: 51 additions & 0 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: main
on:
push:
branches:
- main

jobs:
cover:
name: coverage
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v1
with:
go-version: 1.15
id: go
- uses: actions/checkout@v2
- run: make test
env:
GO_TEST_ARGS: "-coverprofile=coverage.txt -covermode=atomic"
- uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.txt

docker:
name: docker
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: make docker_build
- name: publish monax
env:
DOCKER_REPO: "hyperledger/burrow"
DOCKER_REPO_DEV: "quay.io/monax/burrow"
DOCKER_PASS_DEV: ${{ secrets.DOCKER_PASS_DEV }}
DOCKER_USER_DEV: ${{ secrets.DOCKER_USER_DEV }}
run: |
version=$(./scripts/local_version.sh)
echo ${DOCKER_PASS_DEV} | docker login --username ${DOCKER_USER_DEV} ${DOCKER_REPO_DEV} --password-stdin
docker tag ${DOCKER_REPO}:${version} ${DOCKER_REPO_DEV}:${version}
docker push --all-tags ${DOCKER_REPO_DEV}
- name: publish hyperledger
env:
DOCKER_REPO: "hyperledger/burrow"
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
DOCKER_USER: ${{ secrets.DOCKER_USER }}
run: |
version=$(./scripts/local_version.sh)
echo ${DOCKER_PASS} | docker login --username ${DOCKER_USER} --password-stdin
docker tag ${DOCKER_REPO}:${version} ${DOCKER_REPO}:latest
docker push ${DOCKER_REPO}:latest
Loading

0 comments on commit b059615

Please sign in to comment.