Commit Graph

129 Commits

Author SHA1 Message Date
Steven Allen
c744981585 fix(mkreleaselog): partially handle v2 modules
We can now handle v2 modules that use tags, but not v2 modules that use
v2 sub-directories.
2021-04-13 12:45:15 -07:00
Oli Evans
3106e5f911
chore: dont docker tag rc as latest
- add guard for rc releases; publish them to docker hub with the matching git tag
- make the semver regex stricter and only publish as latest when a full semver tag with no pre-release suffix is the name of the git tag.
- add `release` tag as an alias of `latest` as per https://github.com/ipfs/go-ipfs/issues/3999#issuecomment-742228981

Tested manually as the push-docker-tag.sh script is set up for it:
```shell
./push-docker-tags.sh $(date -u +%F) testingsha release v0.9.0-test dry
Nothing to do. No docker tag defined for branch: release, tag: v0.9.0-test

./push-docker-tags.sh $(date -u +%F) testingsha release v0.9.0-rc1 dry
DRY RUN! I would have tagged and pushed the following...
docker tag ipfs/go-ipfs:wip ipfs/go-ipfs:v0.9.0-rc1
docker push ipfs/go-ipfs:v0.9.0-rc1

./push-docker-tags.sh $(date -u +%F) testingsha release v0.9.0 dry
DRY RUN! I would have tagged and pushed the following...
docker tag ipfs/go-ipfs:wip ipfs/go-ipfs:v0.9.0
docker push ipfs/go-ipfs:v0.9.0
DRY RUN! I would have tagged and pushed the following...
docker tag ipfs/go-ipfs:wip ipfs/go-ipfs:latest
docker push ipfs/go-ipfs:latest
DRY RUN! I would have tagged and pushed the following...
docker tag ipfs/go-ipfs:wip ipfs/go-ipfs:release
docker push ipfs/go-ipfs:release
```

fixes #3999

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2021-04-06 16:39:22 +01:00
hannahhoward
66e0f8a1d9 build(Makefile): set supported platforms by go-version
Set supported platforms correctly by go version (no darwin-386 for >=1.15, no darwin-arm64 unless
>=1.16), make check-go-version work on mac

License: MIT
Signed-off-by: hannahhoward <hannah@hannahhoward.net>
2021-02-18 20:28:54 -08:00
Steven Allen
82e6674099 fix: go doesn't allow gnu short flags 2021-02-08 12:49:51 -08:00
Steven Allen
fed5f05134 build: simplify on gofmt 2021-02-08 12:44:15 -08:00
Steven Allen
30dcc26be8 feat: support the mailmap file in mkreleasenotes
This will use either the mailmap file in the current repo, or the mailmap file
in the target repo, when generating the contributor stats.
2020-05-26 21:46:45 -07:00
Steven Allen
048c1c37b3 fix(mkreleaselog): make robust against running in different working directories
1. Cd into the repo root before running `go list`.
2. Make sure the repo lives in the GOPATH.
2020-05-12 22:30:53 -07:00
Steven Allen
d2b1d5b7d4 fix(mkreleasenotes): include commits directly to master
This will include:

* Commits to master.
* Squashed merges.

In the release notes.
2020-05-08 19:37:56 -07:00
Steven Allen
2b3fafc243 feat(mkreleasenotes): include more repos
We should be including multiformats repos and repos from our core contributors.
2020-05-08 19:37:20 -07:00
Dimitris Apostolou
1e437c7e97
Fix typos and cleanup 2020-04-20 22:00:01 +03:00
Peter Rabbitson
5d3247f9b7 Exclude more concurrency-sensitive dirs from fmt test 2020-03-15 19:51:57 +00:00
Oli Evans
427557e903
wip: remove release tag. use more recent docker.
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-13 14:31:45 +00:00
Oli Evans
9f6349b07b
wip: remove dry run
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-12 19:04:37 +00:00
Oli Evans
2ed366226e
wip: use date instead of circleci build num
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-12 17:07:09 +00:00
Oli Evans
ed9a7e49ae
Merge remote-tracking branch 'origin/master' into docker-tag-from-ci 2020-03-12 14:37:17 +00:00
Peter Rabbitson
81cb535c52 Prevent go fmt check from failing under make -j10 test
Under high paralellism we would be regenerating the plugin source
while doing the initial `go fmt` read.

Instead simply exclude the generated file.
2020-03-12 04:41:09 +01:00
Oli Evans
37dcb2d4e2
wip: circle context. filter to relevent branches
- use a circleci context to provide dockerhub credentials
- use a yaml alias to reduce repetition for branch filters (thanks @Mr0grog)
- limit docker-push step from test workflow to only run on relevant branches

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-06 10:01:11 +00:00
Oli Evans
cba7be08f1
chore: fix typo
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-04 15:36:01 +00:00
Oli Evans
107bbc680d
feat: add bifrost-latest docker tag
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-04 15:27:17 +00:00
Oli Evans
7c593bd84b
wip: add branch filter
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-04 15:23:44 +00:00
Oli Evans
58c240033e
feat: docker build and tag from ci
- build in docker in ci so we can see failures.
- tag and push to dockerhub from ci so we have more control and visibility on the process.

Note, docker workflows run on all branches and no tags by default. You need to opt in to having builds trigger when a git tag is pushed. The filter definition to opt in to tags needs to be present on your job and all dependendent jobs, which is dull. See https://circleci.com/docs/2.0/workflows/#executing-workflows-for-a-git-tag

I've recreated the dockerhub autobuild rules we have currently, but it is worthing taking a moment to review them.

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-03-04 12:12:20 +00:00
Steven Allen
399546a320 fix(mkreleaselog): continue even if we fail to fetch a dep
We might as well generate as much of the changelog as we can.
2020-01-16 15:42:49 -08:00
Steven Allen
77e049d11c fix(mkreleaselog): support 0.DATE versions in go modules
That is vX.Y.Z-0.DATE-HASH.
2020-01-16 15:41:49 -08:00
Oli Evans
982bc38a51
fix: allow profiling of remote node via https
License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-01-16 14:19:58 +00:00
Oli Evans
4eb380a58b
fix: dont fail to collect profiles if no ipfs bin
Due to the bash args used, collect-profiles.sh would fail if which ipfs failed to find an ipfs binary on the path, like when running ipfs in docker.

Fixes that by using a check for the command that wont error if it's not found.

Also
- adds a commment to explains when to use the script and what it does.
- be less chatty. Simpify the output so it's clearer what it's doing. Experts can read the script or set the -x flag themselves.

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2020-01-16 11:42:24 +00:00
Oli Evans
75240599c9
fix: prefer 127.0.0.1
With an empty API headers config like

```js
	"API": {
		"HTTPHeaders": {}
	},
```

running collect-profiles.sh shows connection errors when trying to POST to `/debug/pprof-mutex/` end point when using `localhost`.

The same errors do not occur when using `127.0.0.1`

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2019-09-24 11:20:32 +01:00
Oli Evans
0316abc7d6
fix: make collect-profiles.sh work on mac
The version of `date` that ships with darwin does not support the `-Iseconds` flag.

Use a pattern with `date` to achieve the same thing but should have better cross platform support.

License: MIT
Signed-off-by: Oli Evans <oli@tableflip.io>
2019-09-24 11:06:23 +01:00
Caian
427205c1b6 Add swarm key variables to container daemon
License: MIT
Signed-off-by: Caian Benedicto <caianbene@gmail.com>
2019-08-02 16:28:12 -03:00
Steven Allen
2198bf377d debug: copy ipfs binary as well 2019-07-08 05:34:46 -07:00
Steven Allen
6b0f9f71e0 build: use protoc-gen-* from gomod
Also,

* Make it possible to override the PROTOC binary.
* Remove gx targets.
2019-06-05 10:57:43 -07:00
Steven Allen
e5aa2e7265 mkreleaselog: calculate contributors 2019-05-29 22:41:27 -07:00
Steven Allen
8fb4e924fb misc: update mkreleaselog to build a recursive changelog 2019-05-28 04:05:42 -07:00
Steven Allen
501001ff79
Merge pull request #6349 from ipfs/fix/mk-source-tarball-tempdir
fix vendoring dependencies when building the source tarball
2019-05-20 09:17:09 -07:00
Steven Allen
8d857bab3e fix vendoring dependencies when building the source tarball
TMPDIR is a special variable indicating the _system_ temporary directory root.
Unfortunately, go refuses to honor `go.mod` files in this directory to prevent
random `/tmp/go.mod` files from messing with modules cloned into `/tmp`.

The fix is simple: rename TMPDIR to TEMP.
2019-05-17 12:34:11 -07:00
Jakub Sztandera
96a9dd77c3 Add generation of dependency changes to mkreleaselog
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-05-17 18:37:41 +02:00
Christopher Buesser
f31dd2aae6 GOCC implementation & fix in make & build scripts
The usage of a native 'go' command has been replaced with a make &
environment variable $GOCC. This enables building with multiple go
versions on a single machine as documented:
  * https://golang.org/doc/install#extra_versions

This enables the usage of:
```bash
$ make install
$ # OR
$ GOCC=go1.12.3 make install
$ # OR
$ GOCC=go1.12.4 make install
```
And the build and test tools now pick up on this change

 On branch go-version-check
 Changes to be committed:
	modified:   Rules.mk
	modified:   bin/check_go_version
	modified:   bin/dist_get
	modified:   bin/maketarball.sh
	modified:   coverage/Rules.mk
	modified:   mk/golang.mk
	modified:   mk/tarball.mk
License: MIT
Signed-off-by: Chris Buesser <christopher.buesser@gmail.com>
2019-04-30 21:22:43 -04:00
kpcyrd
9317649c33 Dockerfile: Remove 2 year old deprecation warning
License: MIT
Signed-off-by: kpcyrd <git@rxv.cc>
2019-04-05 14:10:00 +02:00
Jakub Sztandera
a6053d631a mk: fix maketarball to work with gomod
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-13 23:05:48 +01:00
Jakub Sztandera
e575c93dcd misc: add collect-profiles.sh script, update gitignore
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Jakub Sztandera
21f3dae696 gomod: remove gopath check
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Jakub Sztandera
7f80485d93 mk: remove gx from Makefiles
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Steven Allen
daff837886 make: fix building source tarball on macos
Unfortunately, `readlink -f` doesn't work on macos. This change *manually*
converts a relative path to an absolute path.

fixes #5859

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-12-19 11:03:58 -08:00
Steven Allen
c24e987175
Merge pull request #5473 from akaihola/docker-image-profile
docker: allow IPFS_PROFILE to choose the profile for `ipfs init`
2018-11-26 15:29:58 -08:00
Steven Allen
f2d645f922 fix the maketarball script
* don't write the tarball in the directory we're taring (makes tar unhappy)
* fix permissions
* fix gopath

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-01 19:23:23 -07:00
Łukasz Magiera
23ddc26025 ci: Coverage and Junit xmls in one run
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-29 18:44:49 +01:00
Jakub Sztandera
57adfee1ab fix: maketarball.sh for OSX
Just stop using realpath, should not matter.

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2018-10-09 20:02:22 +01:00
Steven Allen
5f1b796365 upgrade gx/gx-go
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-09 12:36:22 +01:00
Antti Kaihola
821982e96a docker: Quote ipfs init args in the container_daemon shell script
License: MIT
Signed-off-by: Antti Kaihola <antti+ipfs@kaihola.fi>
2018-09-26 11:06:54 +03:00
Antti Kaihola
df7c1fcc97 docker: allow IPFS_PROFILE to choose the profile for ipfs init
License: MIT
Signed-off-by: Antti Kaihola <antti+ipfs@kaihola.fi>
2018-09-19 23:33:16 +03:00
Dominic Della Valle
7a3566b007 handle backslash paths in check_go_path
License: MIT
Signed-off-by: Dominic Della Valle <ddvpublic@gmail.com>
2018-07-20 08:35:25 -04:00