Skip to content

Document language: generic #910

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
BanzaiMan opened this issue Jan 12, 2017 · 20 comments
Closed

Document language: generic #910

BanzaiMan opened this issue Jan 12, 2017 · 20 comments
Assignees

Comments

@BanzaiMan
Copy link
Contributor

The only current mention of this is in multi-os doc.

This is worth mentioning either as a section the languages page, or a page of its own.

@acnagy
Copy link
Contributor

acnagy commented Jan 12, 2017

There are a few different ways to end up in the same place as language: generic. Is it worth listing them all?

@BanzaiMan
Copy link
Contributor Author

@acnagy IMO, yes, all except for __connie__, which is an obscure implementation detail that is likely to change over time.

@plaindocs plaindocs self-assigned this Feb 6, 2017
kennytm added a commit to kennytm/rust that referenced this issue May 21, 2017
There is no `minimal` language. Due to travis-ci/travis-ci#4895, it will
fallback to `ruby`, which certainly isn't what we want. `generic` is an
undocumented (travis-ci/docs-travis-ci-com#910) language that serves the
desired purpose.
kennytm added a commit to kennytm/rust that referenced this issue Jun 1, 2017
There is no `minimal` language. Due to travis-ci/travis-ci#4895, it will
fallback to `ruby`, which certainly isn't what we want. `generic` is an
undocumented (travis-ci/docs-travis-ci-com#910) language that serves the
desired purpose.
@hessam61
Copy link

hessam61 commented Dec 7, 2017

Is there a difference between minimal and generic for language? Any update on adding documentation for either of these languages? It seems that minimal is no longer supported, is that correct?

@Wilfred
Copy link

Wilfred commented Jan 5, 2018

Apparently there's language: bash too, according to this comment. It's not clear if there's any advantage of using that over generic.

@Wilfred
Copy link

Wilfred commented Jan 9, 2018

OK, it looks like bash and generic are equivalent. See this PR. This PR suggests that sh and shell are equivalent too.

This comment suggests that Ruby is the default if you don't use generic, so I imagine the build will be a little slower.

Finally, the only documentation mention of generic is in this section of the multi-os docs, as mentioned above.

@plaindocs plaindocs self-assigned this Jan 11, 2018
@MariadeAnton
Copy link
Contributor

MariadeAnton commented Jan 11, 2018

We've introduced a language tag switch and now language: minimal is available instead.
Using language: minimal in either container-based and fully virtualized infras, it comes with fewer pre-installed languages and services and more disk space.

As Anna mentioned, language: minimal points to the same image as language: bash, language: sh and language: shell.

And we're working on documenting this option in our language and infrastructure reference docs.

Thanks much for your patience y'all!

@MariadeAnton
Copy link
Contributor

As an extra note - this time claryfing languague: generic.

Using language: generic with our stable, Trusty image, will point to a complete image so that someone can use many/none programming language:

https://github.com/travis-ci/packer-templates/blob/master/cookbooks/travis_ci_garnet/attributes/default.rb#L136-L151

@Wilfred
Copy link

Wilfred commented Jan 18, 2018

@MariadeAnton just to clarify: is bash different from minimal, and if so, how?

@plaindocs
Copy link
Contributor

Somewhat related to #862

@MariadeAnton
Copy link
Contributor

@Wilfred the image in which they run and default script commands run by Travis CI will be the same.

The difference comes in with language: generic which points to our a larger image which contains more runtimes and services, and runs the same script as minimal - https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/script/generic.rb

https://github.com/travis-ci/travis-build/blob/master/lib/travis/build.rb#L41-L42

unageek added a commit to polatory/polatory that referenced this issue Jan 24, 2018
* Use Docker to build on xenial.

* Fix script.

* Set environment variables.

* Use `language: minimal` instead of `cpp` as it overrides ${CXX}.

travis-ci/docs-travis-ci-com#910 (comment)

* sudo is unnecessary.
denis-yuen added a commit to dockstore/compose_setup that referenced this issue Apr 19, 2018
@stale
Copy link

stale bot commented Apr 22, 2018

Thanks for contributing to this issue. As it has been 90 days since the last activity, we are automatically closing the issue. This is often because the request was already solved in some way and it just wasn't updated or it's no longer applicable. If that's not the case, please do feel free to either reopen this issue or open a new one. We'll gladly take a look again! You can read more here: https://blog.travis-ci.com/2018-03-09-closing-old-issues

@stale stale bot added the stale label Apr 22, 2018
@edmorley
Copy link
Contributor

Still relevant

@stale stale bot removed the stale label Apr 22, 2018
@stale
Copy link

stale bot commented Jul 21, 2018

Thanks for contributing to this issue. As it has been 90 days since the last activity, we are automatically closing the issue. This is often because the request was already solved in some way and it just wasn't updated or it's no longer applicable. If that's not the case, please do feel free to either reopen this issue or open a new one. We'll gladly take a look again! You can read more here: https://blog.travis-ci.com/2018-03-09-closing-old-issues

@stale stale bot added the stale label Jul 21, 2018
@stale stale bot closed this as completed Jul 22, 2018
@tooomm
Copy link

tooomm commented Jul 22, 2018

Can you please reopen or link me to the docs @BanzaiMan ?

@LondonAppDev
Copy link

I've just started using Travis CI and I was a bit confused by the choice of languages. I run all CI steps within docker containers, so I was looking for a language option with minimal dependencies to try and speed up the builds.

After reading the full list of languages (as defined here) I assumed it was not possible to run travis builds without dependencies for a specific language.

After quite a bit of digging/search I found there is also generic and bash.

As a new user to travis I definitely feel it would be beneficial if there was a full list of language options in one place.

@DeeDeeG
Copy link
Contributor

DeeDeeG commented Oct 27, 2018

For those coming here from search engines (Google, Yahoo, DuckDuckGo...)

The pull request #1989 by @plaindocs added documentation for this.

See this page: https://docs.travis-ci.com/user/languages/minimal-and-generic/

@dwijnand
Copy link

Would be nice if these were linked somehow in https://docs.travis-ci.com/user/languages/. Took me a wild roundabout way to finally find that doc page.

@DeeDeeG
Copy link
Contributor

DeeDeeG commented Dec 11, 2018

I agree with @dwijnand. (I had meant to make a pull request for this, but I couldn't figure out exactly how to do it, so I gave up!)

Edit: Perhaps we just need to add an entry to this file:
https://github.com/travis-ci/docs-travis-ci-com/blob/master/_data/languages.yml

Minimal And Generic: "/user/languages/minimal-and-generic/"

@jabl
Copy link

jabl commented Sep 3, 2019

So is the "language: generic" image a superset of all the various "language: foo" images, or is it somewhere in between minimal and the language-specific images?

In this case we're running tests in docker, but before firing up docker we're running a node-based dockerfile linter, so we need access to the "npm" tool to install it. Unfortunately "language: minimal" doesn't work because it doesn't have npm. So what is the best "language: " tag to choose here?

@G00fY2
Copy link

G00fY2 commented Oct 31, 2019

The documentation is also wrong about stating only language:generic has jvm support. Actually trusty and bionic have preinstalled jdk in language:minimal. If I am not totally thats because the recipe here: https://github.com/travis-ci/packer-templates/blob/master/cookbooks/travis_ci_ubuntu_1804_minimal/recipes/default.rb#L46

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

14 participants