Giter Club home page Giter Club logo

docs-travis-ci-com's Introduction

About this repository Build Status

This is the documentation site for Travis CI! (https://docs.travis-ci.com/)

How to contribute

Fork the repository, read the rest of this README file and make some changes. Once you're done with your changes send a pull request. Thanks!

How to check your edit before sending PR

You can inspect how your edits will be reflected by the documentation site. Either by clicking on the Netlify preview link in your Pull Request or building the docs locally.

Install dependencies

  1. Make sure you have Ruby and RubyGems installed.

  2. Install bundler:

    $ gem install bundler
  3. Install application dependencies:

    $ bundle install --binstubs

Generate documentation

Run

$ ./bin/jekyll build

Run application server

You are now ready to start your documentation site, using Jekyll or Puma. For documentation edits, Jekyll is sufficient.

Starting and inspecting edits with Jekyll

  1. Run Jekyll server:

    $ ./bin/jekyll serve
  2. Open localhost:4000 in your browser.

Starting and inspecting edits with Puma

For more programmatical PRs (such as handling webhooks notification via POST), Puma is necessary.

  1. Run Puma server:

    $ ./bin/puma
  2. Open localhost:9292 in your browser.

API V2 documentation

API V2 (and 2.1) documentation is maintained in slate/source and is generated at build time from source.

License

Distributed under the MIT license; the same as other Travis CI projects.

docs-travis-ci-com's People

Contributors

acnagy avatar banzaiman avatar cesar-cs avatar cotsog avatar drogus avatar drtorte avatar emdantrim avatar gildegoma avatar gjtorikian avatar iriberri avatar joepvd avatar joshk avatar lislis avatar lyoness avatar mariadeanton avatar meatballhat avatar michaelklishin avatar michal-at-travisci avatar muizzk avatar mustafa-travisci avatar nrios14 avatar pezi777 avatar plaindocs avatar rkh avatar roidrage avatar sarahhodne avatar solarce avatar stan-travis avatar steveklabnik avatar svenfuchs avatar

Stargazers

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

Watchers

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

docs-travis-ci-com's Issues

wrong github status message on github's pull request

when creating a pull request from a branch (on the same repository) travis will trigger 2 jobs. one for the branch and one for the pull request.

we only run complete suite of tests on pull requests and master branch. for other tests we only run quick style check and unittests (which are quick).

now what happens is that status on pull request is linked to the branch travis job, not pull request one.

somebody else also has this problem?

user/uploading-artifacts.md doesn't describe how artifacts are versioned

I'm trying to work out how to manage artifacts, and while S3 upload seems attractive, I'm unclear from the documentation if builds overwrite previous build artifacts, if they are added in separate folders (with some kind of build/date based naming?), or something else...

A simple couple of sentences in this doc would save me time and effort trying it out.

Mention `--user` option for `pip install`

pip install by default installs things to /usr/local which requires sudo on our Docker based infrastructure.

In order to work around that limitation people can use pip install --user instead, which will install things to the home directory.

Add Documentation About Case Sensitivity

File system on Linux worker is case sensitive and thus import/file system links need to match the case or they won't work.

This could betray users' expectations if they use machines with case insensitive file systems.

Add a note about `after_script:` effect on build result when a step in it fails

From my YML file's "after-script:" block I was calling a shell script that invoked a ruby script. The ruby script would fail (exit code 1), but the build would still end with 0 and be classified as successful.
...
Eventually I tried calling the script from within the "script:" block and this did the trick.

See the following ticket for context.

I think we should add a note about this in the Breaking the Build section.

docs pages are 404ing

Hi! I don't know if this is intentional or not but @solarce mentioned on IRC that I should post an issue here.

The URLs for some documentation pages are 404ing:

These are the only URLs I've tested. Since it seems to be widespread, I'm guessing that other documentation URLs might have changed as well.

edit: I found these pages via Google (travis apt-get and travis container, respectively),

[ci skip] for the build matrix

it would be nice to be able to skip some of the builds when we change for example only the docs.

e.g. I have a build that builds the docs and validates it, but I want to skip the other builds that run tests on the code.

Document xctool_args for .travis.yml

http://docs.travis-ci.com/user/languages/objective-c/ should mention that it is possible to use xctool_args along with other, more specific options, like xcode_project in .travis.yml for objective-c builds.

The way it works is:

It detects if xctool_args is present. If so it uses it, otherwise defaults to an empty string. Now, for each of the known options xctool_project, xctool_workspace, xctool_scheme, and xctool_sdk it will add the respective value as a flag.

E.g. the following in .travis.yml

xctool_args: "-destination 'platform=iOS Simulator,name=iPhone 5s'"
xctool_workspace: "Foo.xcworkspace"
xctool_scheme: Foo 
xctool_sdk: iphonesimulator

would result in this test (script) command:

xctool -destination "platform=iOS Simulator,name=iPhone 5s" -workspace Foo.xcworkspace -scheme Foo -sdk iphonesimulator build test

See https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/script/objective_c.rb#L102-L108 for the implementation.

travis can not reach rubygems-proxy.torquebox.com

several builds use gem artifacts from rubygems-proxy.torquebox.com, basically rubygems proxied and supplied as maven repository. these gems can be used via maven plugins and gradle plugins.

some builds which are currently failing:

https://travis-ci.org/lookout/leafy
https://travis-ci.org/jruby/jruby

yesterday there was DOS attack on the host running rubygems-proxy.torquebox.com - some IPs got blocked as countermeasure. it works again locally with me but travis-ci still only sees connection timeouts to connect to this server. it is possible that the external IP of the travis build servers are part of the blocked IP ranges.

could you please let me know what IPs travis uses on outbound interfaces ?

then we can fix the IP ranges !!

alternatively and even better in for those few projects using gem artifacts is to add them to maven mirrors: #241

CodeClimate and JavaScript Doc Fix

One of our customers emailed us a suggestion to fix our docs with the command that will get CodeClimate to work in a JS environment. ๐Ÿ‘ I'm opening this issue to remind us to fix our docs (because I'm new and haven't learned how to do that yet ๐Ÿ˜‰)

The fix is actually to use the command that CodeClimate suggests in their own docs.

Instead of:

cat lcov.info | codeclimate

Do:

codeclimate < lcov.info

For whatever reason, the piped command didn't always work with CodeClimate and their team has no idea why, but changing it to the 2nd command works like a charm.

Mention how to install and use Ruby on non-Ruby build images

See this ticket for really detailed context.

The idea is the user was confused why the rvm: section in his .travis.yml file was not taking into account in his Elixir build image.

I think it would be nice to mention the recipe somewhere e.g. either a note in the Ruby language page or in a new section that could be titled: How to install other language runtimes.

Explain log size limits

The command output is limited to ~4 MB and is stripped after with the message The log length has exceeded the limit of 4 Megabytes (this usually means that test suite is raising the same exception over and over).. This makes travis unsuitable for a bunch of projects and the user expects a tweak to overcome this or a statement that this limitation is definite (see https://api.travis-ci.org/jobs/69127489/log.txt?deansi=true for an example).

Clarification for the NPM instructions:

https://github.com/travis-ci/docs-travis-ci-com/blob/gh-pages/user/deployment/npm.md

says:

For a minimal configuration, all you need to do is add the following to your .travis.yml:

deploy:
  provider: npm
  email: "YOUR EMAIL ADDRESS"
  api_key: "YOUR API KEY"

Where "YOUR API KEY" is the result of echo -n "username:password" | base64 optionally encrypted.

I suppose that the username/password pair is the npm one, but what about the email address?


As a side note, accepting non-encrypted credentials is IMO doing a disservice to your users.

Up to date list of available Erlang versions

Where can I find an up to date list of available Erlang versions on travis-ci.org and travis-ci.com?

The docs pages lists just two of the available versions and not even the latest one:
http://docs.travis-ci.com/user/languages/erlang/

The cookbooks contains a list, but for example 17.5 is in this list but not available on travis-ci.org:
https://github.com/travis-ci/travis-cookbooks/blob/4285438264dac78378960f97186f06693bcab0ff/ci_environment/kerl/attributes/source.rb

It would be nice if there was a canonical list somewhere which definitely lists all available versions that are actually installed. It is very tedious to have to commit new .travis.yml files all the time just to guess which versions are available. It also creates ugly commit and build histories.

enable repositories via API

Is there a way to do this? I might be looking for the wrong terminology, but I can't find anything in the API docs about how to enable a project with Travis. I'd really like to create a node.js CLI to do it if it's possible.

Improve Gradle caching documentation

Gradle downloaded dependencies caching has some quirks that should be documented. Indeed you need to delete the changing lock file in order to not reupload the cache after every build.

Here is what you should put in your .travis.yml file:

before_cache:
  - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
cache:
  directories:
    - $HOME/.gradle/caches/

List all whitelisted packages and sources

It would be really nice to have a table of the whitelisted packages and sources. You could probably use JavaScript to fetch the json whitelist from the respective repositiories. You could use this data to populate a table with a searchbox so you can search to see if your package was whitelisted. If I have some spare time I might do this myself.

consider using the rubygems support of nexus server

several builds use gem artifacts from rubygems-proxy.torquebox.com, basically rubygems proxied and supplied as maven repository. these gems can be used via maven plugins and gradle plugins.

the jruby project uses this repo as well and due to the nature of the rubygems using ONLY versions ranges it performs rather slow on a maven repo (for each version in the range the pom.xml needs to be downloaded). a local proxy would really speed up the builds here.

I know it is only a small number of projects including jruby.

the latest nexus versions from sonatype come with rubygems repo type included. once the mirror is there you just need to add (assuming the repository ID of the rubygems.org proxy is rubygems)

  <mirror>
      <id>gems</id>
      <name>Rubygems</name>
      <url>http://maven.travis-ci.org/nexus/rubygems/maven/releases</url>
      <mirrorOf>rubygems-releases</mirrorOf>
    </mirror>
    <mirror>
      <id>pregems</id>
      <name>Rubygems Prereleases</name>
      <url>http://maven.travis-ci.org/nexus/rubygems/maven/prereleases</url>
      <mirrorOf>rubygems-prereleases</mirrorOf>
    </mirror>

Document issues around un-authorized organizations

image

This link at the bottom of the left sidebar on the profile page goes to https://github.com/settings/connections/:id, which (I guess) should show Travis CI (Pro) as an "Authorized application" for the current user. If it doesn't, then Travis CI has a problem syncing organization memberships (and repos?) ... I guess.

All of this is kinda unclear even to me (Josh: "tbh, it is all confusing"), and GitHub's docs seem less than helpful, too, e.g. https://help.github.com/articles/about-third-party-application-restrictions/

I think it would be good for us to have a way more simple explanation of what's relevant to the user, how it works on GitHub, how it works on Travis CI, and how they can review things and resolve common problems.

Then link to that page on our own documentation, and only link to that arcane GitHub settings page from there.

consider updating maven to version 3.3.x

maven 3.3.x comes with extension support in way that you can use ruby DSL pom-files which some jruby based projects are using, including jruby project itself. they have to use a maven wrapper instead of the installed maven BUT this has some limits since there is some /etc/mvnrc file which exports MAVEN_HOME which interferes with the maven running via the maven wrapper.

it is save to remove at least the MAVEN_HOME export of the maven setup since the mvn executable will set it as needed.

the current maven setup of travis does not allow to run invoker tests with maven wrapper since they start picking the maven from MAVEN_HOME env. the current workaround is to add to travis.yml:

before_script:
  - export MAVEN_SKIP_RC=true

XUnit sample should use test runner for .NET 4.0 instead of .NET 2.0?

I noticed that the XUnit sample uses the xunit.console.exe which is for .NET 2.0 as displayed in the build log:

$ mono ./testrunner/xunit.runners.1.9.2/tools/xunit.console.exe MyProject/bin/Release/UnitTests.dll
xUnit.net console test runner (64-bit .NET 2.0.50727.1433)
Copyright (C) 2013 Outercurve Foundation.

But since most projects nowadays use .NET 4.0+ it might be better to set the default to xunit.console.clr4.exe which uses .NET 4.0 as displayed in the build log?:

$ mono ./testrunner/xunit.runners.1.9.2/tools/xunit.console.clr4.exe MyProject/bin/Release/UnitTests.dll
xUnit.net console test runner (64-bit .NET 4.0.30319.17020)
Copyright (C) 2013 Outercurve Foundation.

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.