Giter VIP home page Giter VIP logo

ci's People

Contributors

ajnavarro avatar carlosms avatar dpordomingo avatar eiso avatar erizocosmico avatar gy741 avatar jfontan avatar mcuadros avatar smacker avatar smola avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ci's Issues

Add support for projects using Glide in Go builds

We are using Glide for some projects already, and we're likely to start using it in more.

It would be nice if the presence of glide.lock was enough to run glide and so on. Otherwise, defining a variable would also work.

Windows support

E.g. hardcoded SHELL to /bin/bash and other things I have not checked yet.

Minimal requirement to consider this fixed: no errors in bblfsh/client-go.

Recipe for Go

Recipe for documentation tool in Go.

This needs to output api output under /api/go under the project folder.

Generate an index

Generate an index with the following info taken from .bbldc:

  • Description
  • License (SPDX code
  • Issues link
  • Project link

All of these taken from the file mentioned above.

Recipe for C / C++

Recipe for documentation tool in c / c++.

This needs to output api output under /api/c{,pp} under the project folder.

Clarify how to set up for a new repo

I'm trying to set up src-d/github-reminder and I'm having many issues:

  • how do I obtain a new code coverage token?
  • how do I specify the github token?
  • how do I specify the name of the docker image to produce?

@mcuadros

make test-coverage always succeeds

make test-coverage never errors, even if the tests failed to build. Expected behavior: in case of any error, abort make and set the exit code, as all the normal build targets do.

This is especially funny when you realize that the test suite never actually ran after a few weeks.

Drop glide support

Since we migrated to go dep + checked in vendor directory on applications, we don't need glide support anymore.

Proposal: Prepare v2

There is a few things that are pending and may be improved in a v2 version. It would make sense to start thinking about it once Go 1.12 is out, specially if we consider to adopt Go modules and phase out go dep.

This would be my wishlist, it's just something to get started:

  • Add support for Go modules, remove go dep stuff. This is still something that needs discussion, since we'll still keep using go dep in the short term.
  • Enable windows builds by default. Make it explicit when disabling them instead.
  • Specify PKG_PLATFORMS instead of PKG_OS and PKG_ARCH, so we have finer-grained control over GOOS/GOARCH pairs that are built.
  • Drop support for older Go versions (e.g. Go 1.11 if we adopt modules).
  • Simplify test-coverage by adopting the new support for coverage on multiple packages (this depends on dropping support for Go <=1.9) #64
  • GitHub Actions support

Make clean fails with go modules

See golang/go#31002, src-d/sourced-ce#154

Example output for sourced-ce:

$ make clean 
rm -rf build build/bin 
go clean .
can't load package: package github.com/src-d/sourced-ce: unknown import path "github.com/src-d/sourced-ce": cannot find module providing package github.com/src-d/sourced-ce
/home/cmartin/code/src-d/sourced-ce/.ci/Makefile.main:233: recipe for target 'clean' failed
make: *** [clean] Error 1

Recipe for Java

Recipe for documentation tool in Java.

This needs to output api output under /api/java under the project folder.

Recipe for Scala

Recipe for documentation tool in Scala.

This needs to output api output under /api/scala under the project folder.

Recipe for Python

Recipe for documentation tool in Python.

This needs to output api output under /api/python under the project folder.

Universal doc generator

Tool that given a project, generates documentation with our branded theme for each language defined in the file .bbldc under the root folder of the given path.

This should be configurable to receive a baseurl. Each language will live under baseurl/api/:lang.

Explain how to clean after a successful build

As a developer of a project that uses this project, I want to know how to clean my working directory after a successul build.

Currently, make packages can be used to build the project. It creates a build directory and bin directory. The make clean command only deletes the build directory, but not the bin.

We must also document if make clean is the proper invocation for this.

This repo is becoming the standard way to build and test go repositories outside of travis

The README from this project starts with this sentence:

This project contains the common CI configuration for all source{d} Go projects...

And this is true. But we have been moving other functionality recently from other projects to this one, for instance, now that we use glide in some projects, a makefile is needed, and we have been adding targets here for building and testing outside of travis.

It looks as if we were broadening the focus of this project to a more general approach to building and testing go projects.

Is this so? Is there a firm commitment to this trend?, Can we explain that in the readme and also document the expected ways a developer should interact with this new functionality?

Explain how to compile project that use this repo

As a developer of a project that uses this repo I would like to know how to compile and tests my projects.

I believe compiling is achieved by running make packages and the binary will be at bin/<name-of-project>.

I believe testing should be done by the project own makefile.

Generate file from examples.

The examples folder will contain folders with the name of the example and a few files:

For each file, convert it to a representation we can use to show them (either markdown or directly html).

`make test` creates a `vendor` dir but `make packages` doesn't

As a developer of borges I find confusing that make packages does not leave a vendor directory in my project but make test does.

It looks like some high-level, user-oriented make targets, clean things while others don't.

Maybe we can document why this is happening or just make all high-level targets behave the same way.

Add style check

PML team start to use go features of CI.

But one for a style check is missing. Now we use this code to run it:

check-style:
	golint -set_exit_status ./...
	[[ -z $$(gofmt -s -d .) ]] && [[ -z $$(goimports -d . ) ]] || exit 1 \
		# Run `goimports -w . && gofmt -s -w .` to fix style errors
	go vet

I propose to include this code to the main CI file because it is general for any Go project.

@smola WDYT?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.