diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000000..ccfd8320716 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +.dockerignore +.env +.env.* +.git +.gitignore +.travis.yml +Dockerfile +spec +#IDEs folders +.idea \ No newline at end of file diff --git a/.gitignore b/.gitignore index 47124001f61..96ddb289a57 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .DS_Store .bundle +.history .jekyll-metadata .rvmrc .sass-cache @@ -11,8 +12,8 @@ _data/node_js_versions.yml _data/language-details/*-versions.yml assets/javascripts/tablefilter _site -bin node_modules source/tmp/* tmp/ api/ +user/notifications.md diff --git a/.ruby-version b/.ruby-version index 4560fb912c0..e650c01d92f 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -ruby-2.6.3 +3.2.9 diff --git a/.travis.yml b/.travis.yml index ce442cdeeb4..7b9f99839cb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,34 +1,66 @@ #language: ruby -dist: xenial -language: python -python: - - "3.5.2" +dist: bionic + branches: only: - master -env: - global: - - PATH=$HOME/.local/user/bin:$PATH - - NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer -cache: - pip: true - directories: - - vendor/bundle - - node_modules - - $TRAVIS_BUILD_DIR/tmp/.htmlproofer #https://github.com/gjtorikian/html-proofer/issues/381 -addons: - apt: - packages: - - libxml2-utils -deploy: - provider: heroku - api_key: - secure: "hylw2GIHMvZKOKX3uPSaLEzVrUGEA9mzGEA0s4zK37W9HJCTnvAcmgRCwOkRuC4L7R4Zshdh/CGORNnBBgh1xx5JGYwkdnqtjHuUQmWEXCusrIURu/iEBNSsZZEPK7zBuwqMHj2yRm64JfbTDJsku3xdoA5Z8XJG5AMJGKLFgUQ=" - app: docs-travis-ci-com - on: - branch: - - master - edge: true + +jobs: + include: + - name: build site + language: python + python: + - "3.8.3" + env: + global: + - PATH=$HOME/.local/user/bin:$PATH + - NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer + cache: + pip: true + directories: + - vendor/bundle + - node_modules + - $TRAVIS_BUILD_DIR/tmp/.htmlproofer #https://github.com/gjtorikian/html-proofer/issues/381 + addons: + apt: + packages: + - libxml2-utils + - libxml2-dev + - libxslt1-dev + - pkg-config + before_install: + - bundle config set force_ruby_platform true + install: + - rvm use 3.2.9 --install + - bundle install --deployment + - sudo apt-get install libcurl4-openssl-dev # required to avoid SSL errors + script: + - bundle exec rake test + - xmllint --noout _site/feed.build-env-updates.xml + + - name: update dpl v2 docs + if: type = cron || commit_message =~ /ci:dpl/ + language: shell + cache: false + install: + - rvm use 3.3.1 --install + script: + - git clone https://github.com/travis-ci/dpl.git + - cd dpl + - gem build dpl.gemspec + - gem install dpl-*.gem + - cd .. + - rm -rf dpl + - bin/dpl + deploy: + - provider: git_push + token: + secure: "YHuTjIGKpG0A8QJ4kmdLfOW1n+62uLakXv0KjCzWExl22qLSn2frip3j8JsaeMfndsmNZBUfGoONVHvDS+PHnkbRMYf21SjgctpVfHRYZQ3pulexOViEQ6azRgCBWuPO8A+vAyxvjlV4e3UDGnt2x/0X/Tdg9iVf/zzBGjM0YX0=" + branch: auto-dpl-v2-update-docs + pull_request: true + edge: + branch: master + notifications: slack: rooms: @@ -36,10 +68,3 @@ notifications: on_success: never webhooks: https://docs.travis-ci.com/update_webhook_payload_doc -install: - - rvm use 2.6.3 --install - - bundle install --deployment - - sudo apt-get install libcurl4-openssl-dev # required to avoid SSL errors -script: - - bundle exec rake test - - xmllint --noout _site/feed.build-env-updates.xml diff --git a/404.html b/404.html index 6fba736fcd6..bd8e63f644e 100644 --- a/404.html +++ b/404.html @@ -3,6 +3,14 @@ + + + + Travis CI Documentation - 404 Page not found @@ -216,6 +224,11 @@ + + + +
@@ -224,7 +237,7 @@

diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000000..5e21ddd9918 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,38 @@ +FROM ruby:3.2-slim +LABEL maintainer="Travis CI GmbH " + +# packages required for bundle install +RUN ( \ + apt-get update ; \ + apt-get install -y --no-install-recommends git make gcc g++ libpq-dev libcurl4-openssl-dev curl nodejs \ + && rm -rf /var/lib/apt/lists/* \ +) + +# ------ +# Set the encoding to UTF-8 +ENV LC_ALL=C.UTF-8 \ + LANG=en_US.UTF-8 \ + LANGUAGE=en_US.UTF-8 +# ----- +ENV WEBHOOK_PAYLOAD_GIST_ID=4e317d6e71be6d0278be46bb751b2f78 + +# throw errors if Gemfile has been modified since Gemfile.lock +RUN bundle config --global frozen 1 + +# Configure bundler for production +RUN mkdir -p /app + +WORKDIR /app +COPY Gemfile /app +COPY Gemfile.lock /app + +# Install bundler and gems +RUN gem install bundler:2.4.22 \ + && bundle install --verbose --retry=3 +RUN gem install --user-install executable-hooks + +COPY . /app +RUN bundle exec rake build + +EXPOSE 4000 +CMD ["bundle", "exec", "puma", "-p", "4000"] diff --git a/Gemfile b/Gemfile index 0aedb538248..c9eeb09392c 100644 --- a/Gemfile +++ b/Gemfile @@ -1,14 +1,15 @@ source 'https://rubygems.org' -ruby '2.6.3' +ruby '~> 3.2' gem 'faraday' gem 'html-proofer', '~> 3.0' -gem 'jekyll', '>=3.1.6' +gem 'jekyll', '~> 4.3' gem 'jekyll-paginate' gem 'jekyll-redirect-from' gem 'puma' gem 'pry', group: :test +gem 'rack', '~> 3.0' gem 'rack-jekyll' gem 'rack-ssl-enforcer' gem 'rake' @@ -18,7 +19,8 @@ gem 'rubocop', group: :test # All of this is for Slate / middleman -gem "middleman" +gem "middleman", '~> 4.6' +gem 'middleman-sprockets' # For syntax highlighting gem "middleman-syntax" @@ -37,8 +39,6 @@ platforms :mri_18 do gem "ruby18_source_location" end -gem 'therubyracer', :platforms => :ruby - # Remove warnings according to https://github.com/Compass/compass/pull/2088 git 'https://github.com/ably-forks/compass', branch: 'sass-deprecation-warning-fix', ref: '3861c9d' do gem 'compass-core' diff --git a/Gemfile.lock b/Gemfile.lock index 3a25db85ffb..ebf76d6980e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -4,240 +4,317 @@ GIT ref: 3861c9d branch: sass-deprecation-warning-fix specs: - compass (1.0.3) - chunky_png (~> 1.2) - compass-core (~> 1.0.2) - compass-import-once (~> 1.0.5) - rb-fsevent (>= 0.9.3) - rb-inotify (>= 0.9) - sass (>= 3.3.13, < 3.5) compass-core (1.0.2) multi_json (~> 1.0) sass (>= 3.3.0, < 3.5) - compass-import-once (1.0.5) - sass (>= 3.2, < 3.5) GIT remote: https://github.com/travis-ci/dpl - revision: d64f2644207666a56e39c071f3a9d26b7e56b2ab + revision: 8c6eabc699178e992236adf4472f1753b7b292ce specs: - dpl (2.0.0.alpha.9) - cl (~> 1.0) + dpl (2.0.5.4) + logger (~> 1.7.0) + net-http (~> 0.6.0) + travis-cl + travis-packagecloud-ruby + uri (~> 1.0.2) GEM remote: https://rubygems.org/ specs: - activesupport (4.2.11.1) - i18n (~> 0.7) - minitest (~> 5.1) - thread_safe (~> 0.3, >= 0.3.4) - tzinfo (~> 1.1) - addressable (2.7.0) - public_suffix (>= 2.0.2, < 5.0) - ast (2.4.0) - capybara (2.4.4) - mime-types (>= 1.16) - nokogiri (>= 1.3.3) - rack (>= 1.0.0) - rack-test (>= 0.5.4) - xpath (~> 2.0) - chunky_png (1.3.10) - cl (1.1.5) + activesupport (8.0.2.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + ast (2.4.3) + base64 (0.3.0) + benchmark (0.4.1) + bigdecimal (3.2.3) + cl (1.2.4) regstry (~> 1.0.3) - coderay (1.1.2) + coderay (1.1.3) coffee-script (2.4.1) coffee-script-source execjs coffee-script-source (1.12.2) colorator (1.1.0) - em-websocket (0.5.1) + concurrent-ruby (1.3.5) + connection_pool (2.5.4) + contracts (0.17.2) + csv (3.3.5) + dotenv (3.1.8) + drb (2.2.3) + em-websocket (0.5.3) eventmachine (>= 0.12.9) - http_parser.rb (~> 0.6.0) - erubis (2.7.0) - ethon (0.12.0) - ffi (>= 1.3.0) + http_parser.rb (~> 0) + erubi (1.13.1) + ethon (0.15.0) + ffi (>= 1.15.0) eventmachine (1.2.7) - execjs (2.7.0) - faraday (0.15.2) - multipart-post (>= 1.2, < 3) - ffi (1.11.1) + excon (0.112.0) + execjs (2.10.0) + faraday (2.13.4) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.1) + net-http (>= 0.5.0) + fast_blank (1.0.1) + fastimage (2.4.0) + ffi (1.17.2) + ffi (1.17.2-aarch64-linux-gnu) + ffi (1.17.2-arm64-darwin) + ffi (1.17.2-x86_64-linux-gnu) forwardable-extended (2.6.0) - haml (5.0.4) - temple (>= 0.8.0) + google-protobuf (4.32.0) + bigdecimal + rake (>= 13) + google-protobuf (4.32.0-aarch64-linux-gnu) + bigdecimal + rake (>= 13) + google-protobuf (4.32.0-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.32.0-x86_64-linux-gnu) + bigdecimal + rake (>= 13) + haml (6.3.0) + temple (>= 0.8.2) + thor tilt - hike (1.2.3) - hooks (0.4.1) - uber (~> 0.0.14) - html-proofer (3.12.0) + hamster (3.0.0) + concurrent-ruby (~> 1.0) + hashie (5.0.0) + html-proofer (3.19.4) addressable (~> 2.3) mercenary (~> 0.3) - nokogiri (~> 1.10) - parallel (~> 1.3) + nokogiri (~> 1.13) + parallel (~> 1.10) rainbow (~> 3.0) - timerizer (~> 0.3) typhoeus (~> 1.3) yell (~> 2.0) - http_parser.rb (0.6.0) - i18n (0.7.0) - jaro_winkler (1.5.1) - jekyll (3.8.4) + http_parser.rb (0.8.0) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + jekyll (4.4.1) addressable (~> 2.4) + base64 (~> 0.2) colorator (~> 1.0) + csv (~> 3.0) em-websocket (~> 0.5) - i18n (~> 0.7) - jekyll-sass-converter (~> 1.0) + i18n (~> 1.0) + jekyll-sass-converter (>= 2.0, < 4.0) jekyll-watch (~> 2.0) - kramdown (~> 1.14) + json (~> 2.6) + kramdown (~> 2.3, >= 2.3.1) + kramdown-parser-gfm (~> 1.0) liquid (~> 4.0) - mercenary (~> 0.3.3) + mercenary (~> 0.3, >= 0.3.6) pathutil (~> 0.9) - rouge (>= 1.7, < 4) + rouge (>= 3.0, < 5.0) safe_yaml (~> 1.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) jekyll-paginate (1.1.0) - jekyll-redirect-from (0.14.0) - jekyll (~> 3.3) - jekyll-sass-converter (1.5.2) - sass (~> 3.4) - jekyll-watch (2.0.0) + jekyll-redirect-from (0.16.0) + jekyll (>= 3.3, < 5.0) + jekyll-sass-converter (3.1.0) + sass-embedded (~> 1.75) + jekyll-watch (2.2.1) listen (~> 3.0) - json (2.1.0) - kramdown (1.17.0) - libv8 (3.16.14.19) - liquid (4.0.0) - listen (3.0.8) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - mercenary (0.3.6) - method_source (0.9.0) - middleman (3.4.1) + json (2.13.2) + json_pure (2.8.1) + kramdown (2.5.1) + rexml (>= 3.3.9) + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + language_server-protocol (3.17.0.5) + lint_roller (1.1.0) + liquid (4.0.4) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + logger (1.7.0) + memoist (0.16.2) + mercenary (0.4.0) + method_source (1.1.0) + middleman (4.6.2) + middleman-cli (= 4.6.2) + middleman-core (= 4.6.2) + middleman-cli (4.6.2) + thor (>= 0.17.0, < 2) + middleman-core (4.6.2) + activesupport (>= 6.1) + addressable (~> 2.4) + bundler (~> 2.0) coffee-script (~> 2.2) - compass (>= 1.0.0, < 2.0.0) - compass-import-once (= 1.0.5) + contracts + dotenv + erubi execjs (~> 2.0) + fast_blank + fastimage (~> 2.0) haml (>= 4.0.5) - kramdown (~> 1.2) - middleman-core (= 3.4.1) - middleman-sprockets (>= 3.1.2) - sass (>= 3.4.0, < 4.0) - uglifier (~> 2.5) - middleman-core (3.4.1) - activesupport (~> 4.1) - bundler (~> 1.1) - capybara (~> 2.4.4) - erubis - hooks (~> 0.3) - i18n (~> 0.7.0) - listen (~> 3.0.3) - padrino-helpers (~> 0.12.3) - rack (>= 1.4.5, < 2.0) - thor (>= 0.15.2, < 2.0) - tilt (~> 1.4.1, < 2.0) - middleman-gh-pages (0.3.1) + hamster (~> 3.0) + hashie (>= 3.4, < 6.0) + i18n (>= 1.6, < 1.15) + kramdown (~> 2.4) + listen (~> 3.0) + memoist (~> 0.14) + padrino-helpers (~> 0.15.0) + parallel + rack (>= 3) + rackup + sassc (~> 2.0) + servolux + tilt (~> 2.2) + toml + uglifier (>= 3, < 5) + webrick + middleman-gh-pages (0.4.1) rake (> 0.9.3) - middleman-livereload (3.3.4) + middleman-livereload (3.5.0) em-websocket (~> 0.5.1) - middleman-core (~> 3.2) - rack-livereload (~> 0.3.15) - middleman-sprockets (3.5.0) middleman-core (>= 3.3) - sprockets (~> 2.12.1) - sprockets-helpers (~> 1.1.0) - sprockets-sass (~> 1.3.0) - middleman-syntax (3.0.0) + rack-livereload (~> 0.6.1) + middleman-sprockets (4.1.1) + middleman-core (~> 4.0) + sprockets (>= 3.0) + middleman-syntax (3.6.1) middleman-core (>= 3.2) - rouge (~> 2.0) - mime-types (3.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2016.0521) - mini_portile2 (2.4.0) - minitest (5.11.3) - multi_json (1.13.1) - multipart-post (2.0.0) + rouge (~> 3.2) + mime (0.4.4) + mini_portile2 (2.8.9) + minitest (5.25.5) + multi_json (1.17.0) + net-http (0.6.0) + uri netrc (0.11.0) - nokogiri (1.10.4) - mini_portile2 (~> 2.4.0) - padrino-helpers (0.12.9) - i18n (~> 0.6, >= 0.6.7) - padrino-support (= 0.12.9) + nio4r (2.7.4) + nokogiri (1.18.9) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + nokogiri (1.18.9-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-linux-gnu) + racc (~> 1.4) + padrino-helpers (0.15.3) + i18n (>= 0.6.7, < 2) + padrino-support (= 0.15.3) tilt (>= 1.4.1, < 3) - padrino-support (0.12.9) - activesupport (>= 3.1) - parallel (1.17.0) - parser (2.5.1.0) - ast (~> 2.4.0) - pathutil (0.16.1) + padrino-support (0.15.3) + parallel (1.27.0) + parser (3.3.9.0) + ast (~> 2.4.1) + racc + parslet (2.0.0) + pathutil (0.16.2) forwardable-extended (~> 2.6) - powerpack (0.1.2) - pry (0.11.3) - coderay (~> 1.1.0) - method_source (~> 0.9.0) - public_suffix (4.0.1) - puma (3.11.4) - rack (1.6.11) - rack-jekyll (0.5.0) - jekyll (>= 1.3) - listen (>= 1.3) - rack (~> 1.5) - rack-livereload (0.3.17) + prism (1.4.0) + pry (0.15.2) + coderay (~> 1.1) + method_source (~> 1.0) + public_suffix (6.0.2) + puma (7.0.0) + nio4r (~> 2.0) + racc (1.8.1) + rack (3.1.16) + rack-jekyll (0.3.5) + jekyll rack + rack-livereload (0.6.1) + rack (>= 3.0, < 3.2) rack-ssl-enforcer (0.2.9) - rack-test (1.0.0) - rack (>= 1.0, < 3) - rainbow (3.0.0) - rake (12.3.1) - rb-fsevent (0.10.3) - rb-inotify (0.9.10) - ffi (>= 0.5.0, < 2) - rdiscount (2.2.0.1) - redcarpet (3.4.0) - ref (2.0.0) - regstry (1.0.14) - rouge (2.2.1) - rubocop (0.57.2) - jaro_winkler (~> 1.5.1) + rackup (2.2.1) + rack (>= 3) + rainbow (3.1.1) + rake (13.3.0) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rdiscount (2.2.7.3) + redcarpet (3.6.1) + regexp_parser (2.11.2) + regstry (1.0.15) + rexml (3.4.2) + rouge (3.30.0) + rubocop (1.80.2) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) parallel (~> 1.10) - parser (>= 2.5) - powerpack (~> 0.1) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.46.0, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (~> 1.0, >= 1.0.1) - ruby-progressbar (1.9.0) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.46.0) + parser (>= 3.3.7.2) + prism (~> 1.4) + ruby-progressbar (1.13.0) ruby18_source_location (0.2) - safe_yaml (1.0.4) + safe_yaml (1.0.5) sass (3.4.25) - sprockets (2.12.5) - hike (~> 1.2) - multi_json (~> 1.0) - rack (~> 1.0) - tilt (~> 1.1, != 1.3.0) - sprockets-helpers (1.1.0) - sprockets (~> 2.0) - sprockets-sass (1.3.1) - sprockets (~> 2.0) - tilt (~> 1.1) - temple (0.8.0) - therubyracer (0.12.3) - libv8 (~> 3.16.14.15) - ref - thor (0.20.0) - thread_safe (0.3.6) - tilt (1.4.1) - timerizer (0.3.2) - typhoeus (1.3.1) - ethon (>= 0.9.0) - tzinfo (1.2.5) - thread_safe (~> 0.1) - uber (0.0.15) - uglifier (2.7.2) - execjs (>= 0.3.0) - json (>= 1.8.0) - unicode-display_width (1.4.0) - xpath (2.1.0) - nokogiri (~> 1.3) - yell (2.2.0) + sass-embedded (1.92.0) + google-protobuf (~> 4.31) + rake (>= 13) + sass-embedded (1.92.0-aarch64-linux-gnu) + google-protobuf (~> 4.31) + sass-embedded (1.92.0-arm64-darwin) + google-protobuf (~> 4.31) + sass-embedded (1.92.0-x86_64-linux-gnu) + google-protobuf (~> 4.31) + sassc (2.4.0) + ffi (~> 1.9) + securerandom (0.4.1) + servolux (0.13.0) + sprockets (4.2.2) + concurrent-ruby (~> 1.0) + logger + rack (>= 2.2.4, < 4) + temple (0.10.4) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + thor (1.4.0) + tilt (2.6.1) + toml (0.3.0) + parslet (>= 1.8.0, < 3.0.0) + travis-cl (1.2.4) + regstry (~> 1.0) + travis-packagecloud-ruby (1.1.0) + excon (~> 0.40) + json_pure (~> 2) + mime (~> 0.4) + typhoeus (1.5.0) + ethon (>= 0.9.0, < 0.16.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uglifier (4.2.1) + execjs (>= 0.3.0, < 3) + unicode-display_width (2.6.0) + uri (1.0.3) + webrick (1.9.1) + yell (2.2.2) PLATFORMS + aarch64-linux + arm64-darwin-24 ruby + x86_64-linux DEPENDENCIES cl @@ -245,16 +322,18 @@ DEPENDENCIES dpl! faraday html-proofer (~> 3.0) - jekyll (>= 3.1.6) + jekyll (~> 4.3) jekyll-paginate jekyll-redirect-from - middleman + middleman (~> 4.6) middleman-gh-pages middleman-livereload + middleman-sprockets middleman-syntax netrc pry puma + rack (~> 3.0) rack-jekyll rack-ssl-enforcer rake @@ -262,10 +341,9 @@ DEPENDENCIES redcarpet rubocop ruby18_source_location - therubyracer RUBY VERSION - ruby 2.6.3p62 + ruby 3.2.9p265 BUNDLED WITH - 1.17.3 + 2.4.22 diff --git a/README.md b/README.md index 077e5718f8f..36b86db9f3b 100644 --- a/README.md +++ b/README.md @@ -1,49 +1,80 @@ -# About this repository [![Build Status](https://travis-ci.com/travis-ci/docs-travis-ci-com.svg?branch=master)](https://travis-ci.com/travis-ci/docs-travis-ci-com) +# About Travis CI Repository [![Build Status](https://travis-ci.com/travis-ci/docs-travis-ci-com.svg?branch=master)](https://travis-ci.com/travis-ci/docs-travis-ci-com) -This is the documentation site for Travis CI! () +This is the documentation site for [Travis CI!](https://docs.travis-ci.com/). +Follow this guide to learn how to add new documentation and how to update existing documentation. -## How to contribute +## Add Documentation -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! +The following are the steps to add documentation. -## How to check your edit before sending PR +1. Review the [Travis CI documentation guidelines](/STYLE.md). +1. Check existing documentation. Verify that the documentation does not already exist or look for related documentation that can be enhanced. +1. Determine proper placement. In the [Travis CI repository](https://github.com/travis-ci/docs-travis-ci-com/tree/master), browse to the *user* folder (or any other specific folder) and create a new branch. +1. Create a new file and add the new documentation files. +1. Ensure to insert the name and extension for the file. +1. Commit your changes and add a short message to describe your changes. +1. Test the changes locally to verify your edits. +1. Submit a pull request. Include a clear title and description of the proposed changes, and click “**Create pull request**.” -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. +Thank you for your contribution! The Travis CI team will review the pull request and approve any necessary changes. -### Install dependencies +## Update Existing Documentation -1. Make sure you have Ruby and RubyGems installed. +If you see a page that needs to be updated or that can be improved, follow these steps to update Travis CI's existing documentation. -1. Install [bundler](http://bundler.io/): +1. Review the [Travis CI documentation guidelines](/STYLE.md). +1. Identify the Travis CI docs page that needs to be updated. +1. Click the “**Improve this page on GitHub**” button in the top right corner. +1. Once on GitHub, edit the relevant file. +1. Commit your changes. Name your branch, and click the “**Propose changes**” button. +1. Build the docs in a local environment to verify your edits. +1. Submit a pull request. Ensure a clear title and description of the proposed changes are added, and click “**Create pull request**.” + +Thank you for your contribution. The Travis CI team will review the pull request and approve any necessary changes. + + +## Build Local Environment + +You can inspect how the documentation site will reflect your edits. Follow the steps below to learn how to build your local environment and check all your edits before sending the pull request for approval. + +### Install Dependencies + +Follow the steps below to install dependencies. + +1. Ensure you have *Ruby* and *RubyGems* installed. + +1. Clone the [Travis CI docs](https://github.com/travis-ci/docs-travis-ci-com/tree/master) repository. + +1. Install [bundler](http://bundler.io/) as follows: ```sh-session $ gem install bundler ``` -1. Install application dependencies: +1. Next, install application dependencies: ```sh-session $ bundle install --binstubs ``` -### Generate documentation +### Generate Documentation -Run +To generate the documentation, run the following command: ```sh-session $ ./bin/jekyll build ``` +### Run the Application Server -### Run application server - -You are now ready to start your documentation site, using Jekyll or Puma. +You are ready to start your local documentation site using Jekyll or Puma. For documentation edits, Jekyll is sufficient. -#### Starting and inspecting edits with Jekyll +#### Edit with Jekyll + +To start and inspect your edits using Jekyll, follow the steps below: -1. Run Jekyll server: +1. Run the *Jekyll* server: ```sh-session $ ./bin/jekyll serve @@ -51,12 +82,12 @@ For documentation edits, Jekyll is sufficient. 1. Open [localhost:4000](http://localhost:4000/) in your browser. -#### Starting and inspecting edits with Puma +#### Edit with Puma -For more programmatical PRs (such as handling webhooks notification -via POST), Puma is necessary. +For more programmatical pull requests (such as handling webhooks notifications +via POST), Puma is necessary. To start and inspect your edits using Puma, follow the steps below: -1. Run Puma server: +1. Run the *Puma* server: ```sh-session $ ./bin/puma @@ -64,10 +95,10 @@ via POST), Puma is necessary. 1. Open [localhost:9292](http://localhost:9292/) in your browser. -### API V2 documentation +### API Documentation -API V2 (and 2.1) documentation is maintained in `slate/source` and is generated at build time from source. +All Travis CI API V2 (and 2.1) documentation is maintained in `slate/source` and generated from the source at build time. ## License -Distributed under the [MIT license](https://opensource.org/licenses/MIT); the same as other Travis CI projects. +Distributed under the [MIT license](https://opensource.org/licenses/MIT), like other Travis CI projects. diff --git a/Rakefile b/Rakefile index d906f7d8b93..ad69819b662 100755 --- a/Rakefile +++ b/Rakefile @@ -7,6 +7,8 @@ require 'ipaddr' require 'json' require 'yaml' require 'netrc' +require 'erb' +require 'openssl' require 'faraday' require 'html-proofer' @@ -55,12 +57,20 @@ task :list_beta_files do end end +desc 'Stage API output into _site for HTML-Proofer' +task :stage_api => [:make_api] do + mkdir_p '_site/api' + sh 'cp -a api/. _site/api/' +end + desc 'Check links and validate some html' -task :run_html_proofer => [:build] do +task :run_html_proofer => [:build, :stage_api] do options = { internal_domains: ['docs.travis-ci.com'], - check_external_hash: true, - check_html: true, + check_external_hash: false, + check_internal_hash: false, + check_html: false, + disable_external: true, connecttimeout: 600, allow_hash_ref: true, #only_4xx: true, @@ -69,9 +79,25 @@ task :run_html_proofer => [:build] do }, url_ignore: [ /itunes\.apple\.com/, + /^https?:\/\/developer\.travis-ci\.com/, + /^https?:\/\/travis-ci\.com/, + /(^|\W)developer\.travis-ci\.com(\W|$)/, + /(^|\W)travis-ci\.com(\W|$)/, + /\/user\/billing-overview\.md$/, + /\/user\/storage-addon\/?$/, + /user\/build-stages$/ ], - file_ignore: %w[ - ./_site/api/index.html + file_ignore: [ + './_site/api/index.html', + %r{^\./_site/api/fonts/}, + %r{^\./_site/assets/stylesheets/.*\.css\.map$}, + %r{^\./_site/assets/javascripts/.*\.map$}, + %r{^\./_site/assets/javascripts/tablefilter/}, + './_site/user/angular/index.html', + './_site/user/bower/index.html', + './_site/user/vagrant/index.html', + './_site/user/travis-ci-vcs-proxy/index.html', + './_site/user/build-config-yaml/index.html' ], :cache => { :timeframe => '3w' @@ -96,6 +122,10 @@ file '_data/gce_ip_range.yml' do |t| define_ip_range('nat.gce-us-central1.travisci.net', t.name) end +file '_data/gce_ip_ue1_range.yml' do |t| + define_ip_range('nat.gce-us-east1.travisci.net', t.name) +end + file '_data/linux_containers_ip_range.yml' do |t| define_ip_range('nat.linux-containers.travisci.net', t.name) end @@ -105,6 +135,7 @@ file '_data/macstadium_ip_range.yml' do |t| end file '_data/node_js_versions.yml' do |t| + sh 'test -f $HOME/.nvm/nvm.sh || (curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash)' remote_node_versions = `bash -l -c "source $HOME/.nvm/nvm.sh; nvm ls-remote"`.split("\n"). map {|l| l.gsub(/.*v(0\.[0-9]*|[0-9]*)\..*$/, '\1')}.uniq. sort {|a,b| Gem::Version.new(b) <=> Gem::Version.new(a) } @@ -122,10 +153,12 @@ desc 'Refresh generated files' task regen: (%i[clean] + %w[ _data/ec2_ip_range.yml _data/gce_ip_range.yml + _data/gce_ip_ue1_range.yml _data/ip_range.yml _data/linux_containers_ip_range.yml _data/macstadium_ip_range.yml _data/node_js_versions.yml + user/notifications.md ] + %i[update_lang_vers]) desc 'Remove generated files' @@ -133,6 +166,7 @@ task :clean do rm_f(%w[ _data/ec2_ip_range.yml _data/gce_ip_range.yml + _data/gce_ip_ue1_range.yml _data/ip_range.yml _data/linux_containers_ip_range.yml _data/macstadium_ip_range.yml @@ -142,6 +176,7 @@ task :clean do rm_rf('assets/javascripts/tablefilter') rm_rf('_site') rm_rf('api/*') + rm_rf('user/notifications.md') end desc 'Start Jekyll server' @@ -162,28 +197,36 @@ LANG_ARCHIVE_HOST='language-archives.travis-ci.com' TABLEFILTER_SOURCE_PATH='assets/javascripts/tablefilter/dist/tablefilter/tablefilter.js' desc 'update language archive versions' -task :update_lang_vers => [:write_netrc, TABLEFILTER_SOURCE_PATH] do - unless ENV.key?('ARCHIVE_USER') && ENV.key?("ARCHIVE_PASSWORD") - puts "No credentials given. Not updating language versions data." - next - end +task :update_lang_vers => [TABLEFILTER_SOURCE_PATH] do definitions = YAML.load_file('_data/language-details/archive_definitions.yml') definitions.each do |lang, defs| - sh "curl", "-sSf", "--netrc", - "-H \"Accept: application/x-yaml\"", - "https://#{LANG_ARCHIVE_HOST}/builds/#{lang}/#{defs.fetch("prefix","ubuntu")}", + sh "curl" \ + " -H \"Accept: application/x-yaml\"" \ + " https://#{LANG_ARCHIVE_HOST}/builds/#{lang}/#{defs.fetch("prefix","ubuntu")}", :out => "_data/language-details/#{lang}-versions.yml" end end -desc 'Write lang archive credentials' -task :write_netrc do - n = Netrc.read - n[LANG_ARCHIVE_HOST] = ENV["ARCHIVE_USER"], ENV["ARCHIVE_PASSWORD"] - n.save -end - desc "Add TableFilter" file TABLEFILTER_SOURCE_PATH do sh "git", "clone", "--depth=1", "https://github.com/koalyptus/TableFilter.git", "assets/javascripts/tablefilter" end + +desc 'Update notifications ciphers' +file 'user/notifications.md' do + line_length = 80 + ciphers = OpenSSL::Cipher.ciphers.sort.map(&:upcase) + x = [] + while !ciphers.empty? do + row = [] + while row.join(" ").length < line_length do + row << ciphers.shift + end + ciphers.unshift row.pop unless ciphers.empty? + x << row.compact.join(" ") + end + @ciphers_list = x.join("\n") + renderer = ERB.new(File.read('user/notifications.md.erb')) + f = File.new('user/notifications.md', 'w') + f.write renderer.result(binding) +end diff --git a/STYLE.md b/STYLE.md index 2df480c6e02..e972d86259c 100644 --- a/STYLE.md +++ b/STYLE.md @@ -1,6 +1,6 @@ -# Travis CI documentation style guide +# Travis CI Documentation Style Guide -## Markdown and structure +## Markdown and Structure We're planning to lint the Markdown with [Coala.io][coala] and the [MarkdownBear][bear]. @@ -12,13 +12,13 @@ We'll be using a subset (TBD) of the full [list of checks][checks]. [checks]: https://github.com/coala/bear-docs/blob/master/docs/MarkdownBear.rst#settings "MarkdownBear checks" -We use Kramdown, with [GFM](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) codeblocks, and a few Kramdown related exceptions introduced with `{: }` such as class names for specific formatting of columns and notes. +We use Kramdown, with [GFM](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) code blocks, and a few Kramdown-related exceptions introduced with `{: }` such as class names for specific formatting of columns and notes. -### Headings +## Headings -For historical reasons, the top level heading in Jekyll markdown files is level 2 (##) not level 1 (#). +For historical reasons, the top-level heading in Jekyll's markdown files is level 2 (##), not level 1 (#). Only the page’s title is a level 1 heading. -We use ATX style headings, and do not use the optional closing hashes: +We use ATX-style headings and do not use the optional closing hashes: ```markdown ## This is an H2 @@ -28,16 +28,16 @@ We use ATX style headings, and do not use the optional closing hashes: #### This is an H4 ``` -We do not use underline style headings: +We do not use underlined style headings: ```markdown Do not use this style heading ============================= ``` -### Lists +## Lists -If you have long lists you can wrap them into 2 (`.column-2`) or 3 (`.column-3`) columns using one of the follow CSS classes after your list item: +If you have long lists, you can wrap them into 2 (`.column-2`) or 3 (`.column-3`) columns using one of the following CSS classes after your list item: ```css * long list item 1 @@ -45,21 +45,45 @@ If you have long lists you can wrap them into 2 (`.column-2`) or 3 (`.column-3`) {: .column-2 } ``` -#### In-page table of contents +## Links -All pages have tables of contents generated automatically from H2 and H3 +Make sure all links have titles: + +```markdown +The [link][example1] in the text + +[example1]: http://www.example.com "Example URL" +``` + +or + +```markdown +The [link](http://www.example.com "Example URL") in the text +``` + +When linking internal pages, use absolute paths and trailing slashes: `/user/languages/c/`. +You can link to headings and remember to remove special characters, for example: + +To link to "##Node.js Page," use `#nodejs-page`. + + +## In-page Options -To remove the TOC from a page add `no_toc: true` to the frontmatter. +### Notes, warnings, and blocks -### Note, warnings and blocks +Travis CI uses the blockquote symbol `>` for general-purpose notes and warnings. -We use the blockquote symbol `>` for general purpose notes and warnings. +See an example below: -#### Beta features +> Note: This feature is only available in Version 2.0. + +### Beta features Mark all beta features with a specially formatted note. Both the `> BETA` and the `{: .beta}` are required. +See an example below: + > BETA Awesome new feature that might not be enabled and is subject to change. {: .beta} @@ -68,38 +92,17 @@ the `{: .beta}` are required. Mark all alpha features with a specially formatted note. Both the `> ALPHA` and the `{: alpha}` are required. -> ALPHA Awesome new feature that might explode for extra fun. +> ALPHA: Awesome new feature that might explode for extra fun. {: .alpha} ### GUI -Make sure all references to items in a GUI match the case of the UI, and are marked with *asterisks*. - -### Links - -Make sure all links have titles: - -```markdown -The [link][example1] in the text - -[example1]: http://www.example.com "Example URL" -``` - -or - -```markdown -The [link](http://www.example.com "Example URL") in the text -``` - -When linking internal pages, use absolute paths and trailing slashes: `/user/languages/c/`. -You can link to headings, remember to remove special characters, for example: - -To link to "##Node.js Page" use `#nodejs-page`. +Ensure all references to items in a GUI match the case of the UI and are marked with *asterisks*. ### Code Inline -All function names, filenames, etc should be marked with `back-ticks`. +All function names, filenames, etc., should be marked with `back-ticks`. If you're talking about applications or services, only the actual command should be marked as code, not the name of the service: @@ -107,7 +110,7 @@ If you're talking about applications or services, only the actual command should ### Blockquotes / Notes / Warnings -As we have no use for blockquotes we use `>` to indicate notes and warnings: +As we have no use for blockquotes, we use `>` to indicate notes and warnings: ```markdown > Note this important info! @@ -131,16 +134,62 @@ This code is in .travis.yml ``` {: data-file=".travis.yml"} +### In-page table of contents + +All Travis CI pages have tables of contents generated automatically from H2 and H3 +Add `no_toc: true` to the frontmatter to remove the TOC from a page. -### Common misspellings and words to avoid +### Terminology +The following are some common misspellings and words to avoid - Always refer to *Travis CI* and never to Travis. ## Images +Add images inline-style with a brief description. + +To add an image, follow these steps: +1 Capture the image. +2 Save the image in the `images/` path. +3 Add the image to the documentation as follows: +![description text](image path or URL) + ### Screencapture gifs 1. Run a build (or whatever you are trying to capture), 2. Capture it with [licecap](https://www.cockos.com/licecap/). -3. Save the gif in `images/` +3. Save the gif in the following path: `images/` + + +## Documentation Template + +A basic template for contributing to new documentation pages or sections is as follows: + +```markdown +--- +title: “Insert Page Title” +layout: en + +--- + +Start your introduction here. Usually, an introduction is between one and three sentences. + +## Section Heading + +Section introduction sentence. + +* **Item1** - a group of *jobs* that run in sequence. +* **Item2** - a group of *jobs* that run in parallel as part of a sequential *build* process composed of multiple [stages](/user/build-stages/). +* **Item3** - an automated process that clones your repository into a virtual + environment and then carries out a series of *phases* such as compiling your + code, running tests, etc. +* **Item4** - the [sequential steps](/user/job-lifecycle/) + of a *job*. + +``` +{: data-file=".travis.yml"} + +The example above shows a paragraph with different formatting options. + +Check out the [Travis CI documentation](https://docs.travis-ci.com/) for more examples. diff --git a/_config.yml b/_config.yml index 64078cb280f..89a5959dfd0 100644 --- a/_config.yml +++ b/_config.yml @@ -15,3 +15,4 @@ plugins: - jekyll-redirect-from sass: sass_dir: assets/stylesheets + sourcemap: never diff --git a/_data/language-details/archive_definitions.yml b/_data/language-details/archive_definitions.yml index aac4ccb1b4e..d282958269c 100644 --- a/_data/language-details/archive_definitions.yml +++ b/_data/language-details/archive_definitions.yml @@ -1,2 +1,3 @@ python: {} erlang: {} +php: {} diff --git a/_data/languages.yml b/_data/languages.yml index 1fb06266b62..45312105358 100644 --- a/_data/languages.yml +++ b/_data/languages.yml @@ -18,9 +18,9 @@ Haxe: "/user/languages/haxe/" Java: "/user/languages/java/" JavaScript (with Node.js): "/user/languages/javascript-with-nodejs/" Julia: "/user/languages/julia/" +MATLAB: "/user/languages/matlab/" Minimal: "/user/languages/minimal-and-generic/" Nix: "/user/languages/nix/" -Objective-C: "/user/languages/objective-c/" Perl: "/user/languages/perl/" Perl6: "/user/languages/perl6/" PHP: "/user/languages/php/" @@ -30,5 +30,4 @@ Ruby: "/user/languages/ruby/" Rust: "/user/languages/rust/" Scala: "/user/languages/scala/" Smalltalk: "/user/languages/smalltalk/" -Swift: "/user/languages/objective-c/" Visual Basic: "/user/languages/csharp/" diff --git a/_data/snippets.yml b/_data/snippets.yml index f9bf5c76e08..624f3962d43 100644 --- a/_data/snippets.yml +++ b/_data/snippets.yml @@ -18,53 +18,82 @@ before_and_after: | ``` ghlimit: | > If your API or cron triggered builds run on the *same commit - > or branch* over and over again, you will notice GitHub have a limit of + > or branch* over and over again, you will notice GitHub has a limit of > [1000 status updates](https://developer.github.com/v3/repos/statuses/#create-a-status) - > *per commit*, which causes the Travis CI build status displayed on GitHub - > to be incorrect. + > *per commit*, which causes the Travis CI build status to display incorrectly + > on GitHub. > Avoid this problem by specifying a regularly updated branch for your automated builds. all_note: | - > Language versions and other build-environment specific - > information are in our reference pages: + > For Language versions and other build-environment specific + > information visit our reference pages: > * [Precise](/user/reference/precise/) > * [Trusty](/user/reference/trusty/) > * [Xenial](/user/reference/xenial/) > * [Bionic](/user/reference/bionic/) + > * [Focal](/user/reference/focal/) + > * [Jammy](/user/reference/jammy/) + > * [Noble](/user/reference/noble/) > * [macOS](/user/reference/osx/) > * [Windows](/user/reference/windows/) + > * [FreeBSD](/user/reference/freebsd/) unix_note: | - > Language versions and other build-environment specific - > information are in our reference pages: + > For Language versions and other build-environment specific + > information visit our reference pages: > * [Precise](/user/reference/precise/) > * [Trusty](/user/reference/trusty/) > * [Xenial](/user/reference/xenial/) > * [Bionic](/user/reference/bionic/) + > * [Focal](/user/reference/focal/) + > * [Jammy](/user/reference/jammy/) + > * [Noble](/user/reference/noble/) > * [macOS](/user/reference/osx/) + > * [FreeBSD](/user/reference/freebsd/) linux_note: | - > Language versions and other build-environment specific - > information are in our reference pages: + > For Language versions and other build-environment specific + > information visit our reference pages: > * [Precise](/user/reference/precise/) > * [Trusty](/user/reference/trusty/) > * [Xenial](/user/reference/xenial/) > * [Bionic](/user/reference/bionic/) + > * [Focal](/user/reference/focal/) + > * [Jammy](/user/reference/jammy/) + > * [Noble](/user/reference/noble/) linux_windows_note: | - > Language versions and other build-environment specific - > information are in our reference pages: + > For Language versions and other build-environment specific + > information visit our reference pages: > * [Precise](/user/reference/precise/) > * [Trusty](/user/reference/trusty/) > * [Xenial](/user/reference/xenial/) > * [Bionic](/user/reference/bionic/) + > * [Focal](/user/reference/focal/) + > * [Jammy](/user/reference/jammy/) + > * [Noble](/user/reference/noble/) > * [Windows](/user/reference/windows/) + > * [FreeBSD](/user/reference/freebsd/) concurrent_jobs: | The maximum number of concurrent jobs depends on the total system load, but one situation in which you might want to set a particular limit is: - if your build depends on an external resource and might run into a race condition with concurrent jobs. +enabling_access_jobs_logs: | + This setting allows you to increase security by preventing access to old job logs older than 360 days. Or, in the case of a necessity, users can explicitly enable access to public and private old job log repositories. + + The following are the available configurations: + * If this setting is ON, it enables access to build job logs older than 365 days. + * If this setting is OFF, access to build job logs older than 365 days is unavailable via UI or API calls. +limiting_access_jobs_logs: | + Similarly, this setting allows you to restrict access to build job logs for any user without write/push access rights to the repository. Limit job log visibility to only those that needed it. Enable this setting and ensure job logs are only available to users with respective read or write access to the individual repository. + + The following are the available configurations: + * If this setting is ON, it allows access to build job logs only for users with write/push permissions to this repository. Limits access to build job logs via UI and API. + * If this setting is OFF, users with read access to the repository can access the build job logs. + + Please note that the '*Limiting access to build job logs*' repository setting applies only to users with ‘write/push’ permissions. auto_cancellation: | - If you are only interested in building the most recent commit on each branch you can use this new feature to automatically cancel older builds in the queue that are not yet running. + If you are only interested in building the most recent commit on each branch you can use this new feature to automatically cancel older builds that are in the **queued** state and are not yet running. cron_jobs: | - Travis CI cron jobs work similarly to the cron utilty, they run builds at regular scheduled intervals independently of whether any commits were pushed to the repository. Cron jobs always fetch the most recent commit on a particular branch and build the project at that state. Cron jobs can run `daily`, `weekly` or `monthly`, which in practice means up to an hour after the selected time span, and you cannot set them to run at a specific time. + Travis CI cron jobs work similarly to the cron utility; they run builds at regular scheduled intervals independently of whether any commits were pushed to the repository. Cron jobs always fetch the most recent commit on a particular branch and build the project at that state. Cron jobs can run `daily`, `weekly` or `monthly`, which in practice means up to an hour after the selected time span, and you cannot set them to run at a specific time. environment_variables: | Variables defined in repository settings are the same for all builds, and when you restart an old build, it uses the latest values. These variables are not automatically available to forks. @@ -73,26 +102,111 @@ environment_variables: | - differ per repository. - contain sensitive data, such as third-party credentials. contact_enterprise_support: | - To get in touch with us, please write a message to - [enterprise@travis-ci.com](mailto:enterprise@travis-ci.com). If possible, + To get in touch with us, please write a message to + [enterprise@travis-ci.com](mailto:enterprise@travis-ci.com). If possible, please include as much of the following as you can: - + - Description of the problem - what are you observing? - Which steps did you try already? - - A support bundle (You can get it from `https://:8800/support`) + - A support bundle (see table below on how to obtain it) - Log files from all workers (They can be found at `/var/log/upstart/travis-worker.log` - please include as many as you can retrieve). - If a build failed or errored, a text file of the build log - - Have you made any customizations to your setup? While we may be able to see some - information (such as hostname, IaaS provider, and license expiration), there - are many other things we can't see which could lead to something not working. - Therefore , we'd like to ask you to also answer the questions below in your + + | TCI Enterprise version | Support bundle | + | :--- | :--- | + | **3.x** | Run `kubectl kots admin-console -n [namespace]` to access admin console on `http://localhost:8800`
Support bundle generation instruction is available in ‘troubleshoot’ menu or directly at: `http://localhost:8800/app/tci-enterprise-kots/troubleshoot`

A command for generating support bundle will appear after selecting:
`If you'd prefer, [click here]() to get a command to manually generate a support bundle.` | + | **2.x+** | You can get it from `https://:8800/support` | + + Since the announcement in Q3 2020, the most up to date version of Travis CI Enterprise is 3.x line. + There are not any new releases for version 2.2 and the support patches has been limited since March 2021 as well. + For existing users of Travis CI 2.x we strongly recommend upgrading to the latest Travis CI Enterprise 3.x. + + Have you made any customizations to your setup? While we may be able to see some + information (such as hostname, IaaS provider, and license expiration), there + are many other things we cannot see which could lead to something not working. + Therefore, we would like to ask you to also answer the questions below in your support request (if applicable): - - - How many machines are you using? + + - How many machines are you using / what is your Kubernetes cluster setup? - Do you use configuration management tools (Chef, Puppet)? - Which other services do interface with Travis CI Enterprise? - - Do you use Travis CI Enterprise together with github.com or GitHub Enterprise? - - If you're using GitHub Enterprise, which version of it? + - Which Version Control system (VCS) do you use together with Travis CI Enterprise (e.g. github.com, GitHub Enterprise, or BitBucket Cloud)? + - If you are using GitHub Enterprise, which version of it? + + We are looking forward to helping! +enterprise_2_encryption_key_backup: | + To make a backup of encryption keys in TCIE 2.x, please follow these steps: + + 1. Open an SSH connection to the platform machine. + 2. Open a bash session with `root` privileges on the Travis CI container by running `travis bash`. + 3. Run the following command to obtain the key: `grep -A1 encryption: /usr/local/travis/etc/travis/config/travis.yml`. + 4. Create a backup of the value returned by the previous command by either writing it down on a piece of paper or storing it on a different computer. +enterprise_3_encryption_key_backup: | + To make a backup of encryption keys in TCIE 3.x, please follow these steps: + + 1. Make sure you have appropriate access to the kubernetes cluster: you need credentials for `kubectl` and connection to [travis-api-pod] + 2. Run `kubectl exec -it [travis-api-pod] cat /app/config/travis.yml |grep -A 2 encryption` (using Travis API pod is recommended). + 3. Create a backup of the value returned by that command by either writing it down on a piece of paper or storing it on a different computer. +github_oauth_access_rights: | + When you sign in to [travis-ci.com](https://travis-ci.com) using GitHub for the first time, you will receive a message from GitHub saying: + + > Travis CI by travis-pro wants to access your [account name] account. + + and in the repositories section it will state: + + > This application will be able to read and write all public and private repository data. + + This is not how Travis CI accesses your data, however we can explain it later in the process. + + The warning is triggered due to GitHub OAuth App permissions which Travis CI uses, and due to the available granularity of permission scopes (see GitHub [Scopes for OAuth Apps documentation](https://docs.github.com/en/developers/apps/scopes-for-oauth-apps) ). + + **Travis CI does not access all your repositories by default**. + + Once you acknowledge the access rights, you will see Travis CI OAuth application present in your GitHub [Authorized OAuth Apps list](https://github.com/settings/applications), however **you need to explicitly configure which repositories Travis CI has access to** within your [travis-ci.com](https://travis-ci.com) account. The configuration is done during the activation of Travis CI for your repositories. You can use either the 'All repositories' option or the 'Only select repositories' option during the activation process. + + When the Travis CI activation has completed, you will see the actual Travis CI GitHub Application installed in [Installed GitHub Apps](https://github.com/settings/installations) section. + + Travis CI uses OAuth permissions in the following way: + + 1) Travis CI's system synchronizes certain metadata with GitHub. This metadata is required for proper service functioning. In particular, we sync users, orgs, memberships, repos, permissions and, (optionally) branches. This type of sync happens either once a day by schedule or per the user's request. You can find more information and source code [in this repository](https://github.com/travis-ci/travis-github-sync#syncs) + + 2) In order to run builds, Travis CI's system clones a repository, from which the build is triggered, to the build environment. The build environment is an isolated virtual machine or an LXD container, which gets terminated as soon as the build finishes. Cloning happens only after a build request, and therefore only for the repositories explicitly enabled at GitHub settings. + + 3) To set up a build environment and prepare the build, Travis CI's system fetches and processes the `.travis.yml` config file from the repository and the branch explicitly specified in the build request, triggered by GitHub. + + 4) Travis CI's system reports build results back to GitHub via its [Checks API](https://developer.github.com/v3/checks/). +git_repository_settings_forks_general: | + > Repository security settings for forked repositories on Git are available starting March 1st, 2022. + + For Git repositories, you may manage per repository how the [environment variables](/user/environment-variables/) and the [custom SSH keys](/user/private-dependencies/#user-key) will be handled in Travis CI when a build triggered as an effect of filing a Pull Request from a forked repository. Two settings are available specifically for this purpose, allowing you to customize your security vs. collaboration setup. + + * **base repository** - a Git repository, which is forked by someone else + * **fork** or **forked repository** - any Git repository forked from the **base repository** + * **PR** - Pull Request (e.g. in GitHub, BitBucket, GitLab) or Merge Request (in Assembla) + + > Please note: Repositories activated in [Travis CI](https://app.travis-ci.com ) before **March 1st, 2022** will have the `Share encrypted environment variables with forks (PRs) ` setting set to OFF. Please verify your collaboration model if necessary (especially for public repositories). The `Share SSH keys with forks (PRs)` will be set to ON for private repositories not to break too many collaboration setups. + Repository settings will be set by default to OFF for any repository activated in [Travis CI](https://app.travis-ci.com) after **March 1st, 2022**. For repositories activated in Travis CI after **March 1st, 2022**, you may want to consider changing the default settings depending on your collaboration model. +git_repository_settings_forks_encrypted_env_variables: | + ### Share encrypted environment variables with forks (PRs) + + This setting determines if the base repository´s encrypted environment variables will be shared with the forked repository in a fork-to-base pull request (the fork repository merges changes into the base repository). + + In the case of a base-to-base pull request (changes are merged from the **base repository** into itself), the encrypted environment variables will always be available. This allows collaborators to file Pull Requests using the repository encrypted environment variables and preserve existing checks configured, e.g. in GitHub. + + In the case of a fork-to-fork pull request (changes are merged from the **forked repository** into itself), the encrypted environment variables from the **base repository** will never be available. Therefore, one needs to replace or bypass them directly in **forked repository**. + + In the case of a fork-to-base pull request: + * If this setting is ON, the encrypted environment variables will be available to the forked repository, which means that builds in the **forked repository** will have access to the encrypted environment variables from the **base repository**. This may be a less secure approach yet allows for a collaboration using forks and Pull Requests (PRs). + * If this setting is OFF and the build relies on any encrypted environment variable, the PR from **fork** to **base repository** will fail. This secures your **base repository** encrypted environmental variables by putting a constraint on accessing them from **forks**. +git_repository_settings_forks_ssh_keys: | + ### Share SSH keys with forks (PRs) + + > Please Note: The ‘Share SSH keys with forks (PRs)’ repository setting is applicable only for private repositories in the [travis-ci.com](https://app.travis-ci.com) environment. + + This setting determines if the custom SSH keys from the **base repository** will be shared with the **forked repository** in a fork-to-base pull request (changes are merged from the fork repository into the base repository). In the case of a base-to-base pull request (changes are merged from the base repository into itself), the custom SSH keys will always be available. - We're looking forward to helping! + In the case of a fork-to-fork pull request (changes are merged from the forked repository into itself), the custom SSH keys from the base repository will never be available. + + In the case of a fork-to-base pull request: + * if this setting is ON, the custom SSH keys from the base repository will be available to the **forked repository**, which means that the build in the forked repository will be able to use the custom SSH keys from the base repository. Consider setting to ON if your collaboration model requires working with Pull Requests (PRs) from forked repositories or there are dependencies defined, which rely on SSH key from **base repository**. + * If this setting is OFF and the build is relying on custom SSH keys i.e. for fetching some additional dependencies, it will fail with a no access error. diff --git a/_data/xcodes.yml b/_data/xcodes.yml index 681cacd654e..137a86ab198 100644 --- a/_data/xcodes.yml +++ b/_data/xcodes.yml @@ -1,10 +1,758 @@ osx_images: + - image: xcode14.2 + xcode: "14.2" + osx_version: "12.6" + xcode_full_version: "14.2" + xcode_build_version: "14C18" + image_publish_date: 2023-01-06 + sdks: + - iphoneos16.2 + - iphonesimulator16.2 + - macosx13.1 + - appletvos16.1 + - appletvsimulator16.1 + - watchos9.1 + - watchsimulator9.1 + simulators: + - iOS 15.0 + - iOS 15.2 + - iOS 15.4 + - iOS 15.5 + - iOS 16.0 + - iOS 16.2 + - tvOS 14.5 + - tvOS 15.0 + - tvOS 15.2 + - tvOS 15.4 + - tvOS 16.0 + - tvOS 16.1 + - watchOS 7.4 + - watchOS 8.0 + - watchOS 8.3 + - watchOS 8.5 + - watchOS 9.0 + - watchOS 9.1 + jdk: "19.0.1" + - image: xcode14.1 + xcode: "14.1" + osx_version: "12.6" + xcode_full_version: "14.1" + xcode_build_version: "14B47b" + image_publish_date: 2022-11-11 + sdks: + - iphoneos16.0 + - iphonesimulator16.0 + - macosx12.3 + - appletvos16.0 + - appletvsimulator16.0 + - watchos9.0 + - watchsimulator9.0 + simulators: + - iOS 15.0 + - iOS 15.2 + - iOS 15.4 + - iOS 15.5 + - iOS 16.0 + - iOS 16.1 + - tvOS 14.5 + - tvOS 15.0 + - tvOS 15.2 + - tvOS 15.4 + - tvOS 16.0 + - tvOS 16.1 + - watchOS 7.4 + - watchOS 8.0 + - watchOS 8.3 + - watchOS 8.5 + - watchOS 9.0 + - watchOS 9.1 + jdk: "19.0.1" + - image: xcode14 + xcode: "14" + osx_version: "12.6" + xcode_full_version: "14.0.1" + xcode_build_version: "14A400" + image_publish_date: 2022-10-27 + sdks: + - iphoneos16.0 + - iphonesimulator16.0 + - macosx12.3 + - appletvos16.0 + - appletvsimulator16.0 + - watchos9.0 + - watchsimulator9.0 + simulators: + - iOS 14.5 + - iOS 15.0 + - iOS 15.2 + - iOS 15.4 + - iOS 15.5 + - iOS 16.0 + - tvOS 14.4 + - tvOS 14.5 + - tvOS 15.0 + - tvOS 15.2 + - tvOS 15.4 + - tvOS 16.0 + - watchOS 7.2 + - watchOS 7.4 + - watchOS 8.0 + - watchOS 8.3 + - watchOS 8.5 + - watchOS 9.0 + jdk: "19" + - image: xcode13.4 + xcode: "13.4" + osx_version: "12.4" + xcode_full_version: "13.4.1" + xcode_build_version: "13F100" + image_publish_date: 2022-06-08 + sdks: + - iphoneos15.5 + - iphonesimulator15.5 + - macosx12.3 + - appletvos15.4 + - appletvsimulator15.4 + - watchos8.5 + - watchsimulator8.5 + simulators: + - iOS 14.4 + - iOS 14.5 + - iOS 15.0 + - iOS 15.2 + - iOS 15.4 + - iOS 15.5 + - tvOS 14.3 + - tvOS 14.4 + - tvOS 14.5 + - tvOS 15.0 + - tvOS 15.2 + - tvOS 15.4 + - watchOS 7.2 + - watchOS 7.4 + - watchOS 8.0 + - watchOS 8.3 + - watchOS 8.5 + jdk: "18.0.1.1+0" + - image: xcode13.3 + xcode: "13.3" + osx_version: "12.3" + xcode_full_version: "13.2.1" + xcode_build_version: "13E113" + image_publish_date: 2022-03-23 + sdks: + - iphoneos15.4 + - iphonesimulator15.4 + - macosx12.3 + - appletvos15.4 + - appletvsimulator15.4 + - watchos8.5 + - watchsimulator8.5 + simulators: + - iOS 14.3 + - iOS 14.4 + - iOS 14.5 + - iOS 15.0 + - iOS 15.2 + - iOS 15.4 + - tvOS 14.3 + - tvOS 14.4 + - tvOS 14.5 + - tvOS 15.0 + - tvOS 15.2 + - tvOS 15.4 + - watchOS 7.2 + - watchOS 7.4 + - watchOS 8.0 + - watchOS 8.3 + - watchOS 8.5 + jdk: "17+35-2724" + - image: xcode13.2 + xcode: "13.2" + osx_version: "12.1" + xcode_full_version: "13.2.1" + xcode_build_version: "13C100" + image_publish_date: 2021-12-21 + sdks: + - iphoneos15.2 + - iphonesimulator15.2 + - macosx12.1 + - appletvos15.2 + - appletvsimulator15.2 + - watchos8.3 + - watchsimulator8.3 + simulators: + - iOS 14.0 + - iOS 14.1 + - iOS 14.2 + - iOS 14.3 + - iOS 14.4 + - iOS 14.5 + - iOS 15.0 + - tvOS 14.0 + - tvOS 14.2 + - tvOS 14.3 + - tvOS 14.4 + - tvOS 14.5 + - tvOS 15.0 + - watchOS 7.0 + - watchOS 7.1 + - watchOS 7.2 + - watchOS 7.4 + - watchOS 8.0 + jdk: "17+35-2724" + - image: xcode13.1 + xcode: "13.1" + osx_version: "11.6" + xcode_full_version: "13.1" + xcode_build_version: "13A1030d" + image_publish_date: 2021-10-22 + sdks: + - iphoneos14.5 + - iphonesimulator14.5 + - macosx11.3 + - appletvos14.5 + - appletvsimulator14.5 + - watchos7.4 + - watchsimulator7.4 + simulators: + - iOS 14.0 + - iOS 14.1 + - iOS 14.2 + - iOS 14.3 + - iOS 14.4 + - iOS 14.5 + - iOS 15.0 + - tvOS 14.0 + - tvOS 14.2 + - tvOS 14.3 + - tvOS 14.4 + - tvOS 14.5 + - tvOS 15.0 + - watchOS 7.0 + - watchOS 7.1 + - watchOS 7.2 + - watchOS 7.4 + - watchOS 8.0 + jdk: "17+35-2724" + - image: xcode12.5 + xcode: "12.5" + osx_version: "11.3" + xcode_full_version: "12.5" + xcode_build_version: "12E262" + image_publish_date: 2021-05-05 + sdks: + - iphoneos14.5 + - iphonesimulator14.5 + - macosx11.3 + - appletvos14.5 + - appletvsimulator14.5 + - watchos7.4 + - watchsimulator7.4 + simulators: + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.0 + - iOS 13.1 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 13.6 + - iOS 13.7 + - iOS 14.0 + - iOS 14.1 + - iOS 14.2 + - iOS 14.3 + - iOS 14.4 + - iOS 14.5 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.0 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - tvOS 14.0 + - tvOS 14.2 + - tvOS 14.3 + - tvOS 14.4 + - tvOS 14.5 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.0 + - watchOS 6.1 + - watchOS 6.2 + - watchOS 7.0 + - watchOS 7.1 + - watchOS 7.2 + - watchOS 7.4 + jdk: "16.0.1" + - image: xcode12.4 + xcode: "12.4" + osx_version: "11.2.1" + xcode_full_version: "12.4" + xcode_build_version: "12D4e" + image_publish_date: 2021-02-26 + sdks: + - iphoneos14.4 + - iphonesimulator14.4 + - driverkit.macosx20.2 + - macosx11.1 + - appletvos14.3 + - appletvsimulator14.3 + - watchos7.2 + - watchsimulator7.2 + simulators: + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.0 + - iOS 13.1 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 13.6 + - iOS 13.7 + - iOS 14.0 + - iOS 14.1 + - iOS 14.2 + - iOS 14.3 + - iOS 14.4 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.0 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - tvOS 14.0 + - tvOS 14.2 + - tvOS 14.3 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.0 + - watchOS 6.1 + - watchOS 6.2 + - watchOS 7.0 + - watchOS 7.1 + - watchOS 7.2 + jdk: "15.0.1" + - image: xcode12.3 + xcode: "12.3" + osx_version: "11.1" + xcode_full_version: "12.3" + xcode_build_version: "12C33" + image_publish_date: 2021-01-29 + sdks: + - iphoneos14.3 + - iphonesimulator14.3 + - macosx11.1 + - appletvos14.3 + - appletvsimulator14.3 + - watchos7.2 + - watchsimulator7.2 + simulators: + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.0 + - iOS 13.1 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 13.6 + - iOS 13.7 + - iOS 14.0 + - iOS 14.1 + - iOS 14.2 + - iOS 14.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.0 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - tvOS 14.0 + - tvOS 14.2 + - tvOS 14.3 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.0 + - watchOS 6.1 + - watchOS 6.2 + - watchOS 7.0 + - watchOS 7.1 + - watchOS 7.2 + jdk: "15.0.1" + - image: xcode12.2 + xcode: "12.2" + osx_version: "10.15.7" + xcode_full_version: "12.2" + xcode_build_version: "12B5018i" + image_publish_date: 2020-10-06 + sdks: + - iphoneos14.2 + - iphonesimulator14.2 + - macosx11.0 + - appletvos14.2 + - appletvsimulator14.2 + - watchos7.1 + - watchsimulator7.1 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.0 + - iOS 13.1 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 14.0 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.0 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - tvOS 14.0 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + - watchOS 6.2 + - watchOS 7.0 + jdk: "14.0.2" + - image: xcode12u + xcode: "12 (Universal)" + osx_version: "10.15.5" + xcode_full_version: "12.0" + xcode_build_version: "12A8161k" + image_publish_date: 2020-07-13 + sdks: + - iphoneos14.0 + - iphonesimulator14.0 + - driverkit.macosx20.0 + - macosx11.0 + simulators: + - iOS 14.0 + jdk: "14.0.1" + - image: xcode12 + xcode: "12" + osx_version: "10.15.7" + xcode_full_version: "12.0.1" + xcode_build_version: "12A7300" + image_publish_date: 2020-10-06 + sdks: + - iphoneos14.0 + - iphonesimulator14.0 + - macosx10.15 + - appletvos14.0 + - appletvsimulator14.0 + - watchos7 + - watchsimulator7 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.0 + - iOS 13.1 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 14.0 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.0 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - tvOS 14.0 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + - watchOS 6.2 + - watchOS 7.0 + jdk: "14.0.2" + - image: xcode11.6 + xcode: "11.6" + osx_version: "10.15.5" + xcode_full_version: "11.6" + xcode_build_version: "11E708" + image_publish_date: 2020-07-28 + sdks: + - iphoneos13.6 + - iphonesimulator13.6 + - macosx10.15 + - appletvos13.4 + - appletvsimulator13.4 + - watchos6.2 + - watchsimulator6.2 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - iOS 13.6 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + - watchOS 6.2 + jdk: "14.0.2" + - image: xcode11.5 + xcode: "11.5" + osx_version: "10.15.4" + xcode_full_version: "11.5" + xcode_build_version: "11E608c" + image_publish_date: 2020-05-27 + sdks: + - iphoneos13.5 + - iphonesimulator13.5 + - macosx10.15 + - appletvos13.4 + - appletvsimulator13.4 + - watchos6.2 + - watchsimulator6.2 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - iOS 13.5 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + - watchOS 6.2 + jdk: "14.0.1" + - image: xcode11.4 + xcode: "11.4.1" + osx_version: "10.15.4" + xcode_full_version: "11.4.1" + xcode_build_version: "11E503a" + image_publish_date: 2020-05-07 + sdks: + - iphoneos13.4 + - iphonesimulator13.4 + - macosx10.15 + - appletvos13.4 + - appletvsimulator13.4 + - watchos6.2 + - watchsimulator6.2 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.2 + - iOS 13.3 + - iOS 13.4 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.2 + - tvOS 13.3 + - tvOS 13.4 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + - watchOS 6.2 + jdk: "14.0.1" + - image: xcode11.3 + xcode: "11.3.1" + osx_version: "10.14.6" + xcode_full_version: "11.3.1" + xcode_build_version: "11C505" + image_publish_date: 2020-02-07 + sdks: + - iphoneos13.2 + - iphonesimulator13.2 + - macosx10.15 + - appletvos13.2 + - appletvsimulator13.2 + - watchos6.1 + - watchsimulator6.1 + simulators: + - iOS 10.3 + - iOS 11.0 + - iOS 11.1 + - iOS 11.2 + - iOS 11.3 + - iOS 11.4 + - iOS 12.0 + - iOS 12.1 + - iOS 12.2 + - iOS 12.4 + - iOS 13.2 + - iOS 13.3 + - tvOS 10.2 + - tvOS 11.0 + - tvOS 11.1 + - tvOS 11.2 + - tvOS 11.3 + - tvOS 11.4 + - tvOS 12.0 + - tvOS 12.1 + - tvOS 12.2 + - tvOS 12.4 + - tvOS 13.2 + - tvOS 13.3 + - watchOS 3.2 + - watchOS 4.0 + - watchOS 4.1 + - watchOS 4.2 + - watchOS 5.0 + - watchOS 5.1 + - watchOS 5.2 + - watchOS 5.3 + - watchOS 6.1 + jdk: "14" - image: xcode11.2 - xcode: "11.2" - osx_version: "10.14" - xcode_full_version: "11.2" - xcode_build_version: "11B41" - image_publish_date: 2019-10-07 + xcode: "11.2.1" + osx_version: "10.14.6" + xcode_full_version: "11.2.1" + xcode_build_version: "11B500" + image_publish_date: 2019-11-20 sdks: - iphoneos13.2 - iphonesimulator13.2 @@ -22,10 +770,10 @@ osx_images: - iOS 11.4 - iOS 12.0 - iOS 12.1 - - iOS 13.0 - - iOS 13.1 + - iOS 12.2 + - iOS 12.4 - iOS 13.2 - - tvOS 10.2 + - tvOS 10.2 - tvOS 11.0 - tvOS 11.1 - tvOS 11.2 @@ -33,20 +781,22 @@ osx_images: - tvOS 11.4 - tvOS 12.0 - tvOS 12.1 - - tvOS 13.0 + - tvOS 12.2 + - tvOS 12.4 - tvOS 13.2 - watchOS 3.2 - watchOS 4.0 - watchOS 4.1 - watchOS 4.2 - - watchOS 5.0 + - watchOS 5.0 - watchOS 5.1 - - watchOS 6.0 + - watchOS 5.2 + - watchOS 5.3 - watchOS 6.1 - jdk: "13" + jdk: "14" - image: xcode11.1 xcode: "11.1" - osx_version: "10.14" + osx_version: "10.14.6" xcode_full_version: "11.1" xcode_build_version: "11A1027" image_publish_date: 2019-10-07 @@ -69,7 +819,7 @@ osx_images: - iOS 12.1 - iOS 13.0 - iOS 13.1 - - tvOS 10.2 + - tvOS 10.2 - tvOS 11.0 - tvOS 11.1 - tvOS 11.2 @@ -82,13 +832,13 @@ osx_images: - watchOS 4.0 - watchOS 4.1 - watchOS 4.2 - - watchOS 5.0 + - watchOS 5.0 - watchOS 5.1 - watchOS 6.0 - jdk: "13" + jdk: "14" - image: xcode11 xcode: "11.0" - osx_version: "10.14" + osx_version: "10.14.6" xcode_full_version: "11.0" xcode_build_version: "11A420a" image_publish_date: 2019-09-19 @@ -110,7 +860,7 @@ osx_images: - iOS 12.0 - iOS 12.1 - iOS 13.0 - - tvOS 10.2 + - tvOS 10.2 - tvOS 11.0 - tvOS 11.1 - tvOS 11.2 @@ -123,10 +873,10 @@ osx_images: - watchOS 4.0 - watchOS 4.1 - watchOS 4.2 - - watchOS 5.0 + - watchOS 5.0 - watchOS 5.1 - watchOS 6.0 - jdk: "12.0.2" + jdk: "14" - image: xcode10.3 xcode: "10.3" osx_version: "10.14.4" @@ -170,6 +920,7 @@ osx_images: - watchOS 5.1 - watchOS 5.2 - watchOS 5.3 + jdk: "13.0.1" - image: xcode10.2 xcode: "10.2" osx_version: "10.14" @@ -229,7 +980,7 @@ osx_images: - watchOS 5.0 - watchOS 5.1 - watchOS 5.2 - jdk: "12+33" + jdk: "13.0.1" - image: xcode10.1 xcode: "10.1" osx_version: "10.13" @@ -286,7 +1037,7 @@ osx_images: - watchOS 4.2 - watchOS 5.0 - watchOS 5.1 - jdk: "11.0.1+13" + jdk: "13.0.1" - image: xcode10 xcode: "10.0" osx_version: "10.13" @@ -340,7 +1091,7 @@ osx_images: - watchOS 4.1 - watchOS 4.2 - watchOS 5.0 - jdk: "10.0.2+13" + jdk: "13.0.1" - image: xcode9.4 xcode: "9.4" osx_version: "10.13" @@ -393,7 +1144,7 @@ osx_images: - watchOS 4.1 - watchOS 4.2 - watchOS 4.3 - jdk: "10.0.1+10" + jdk: "13.0.1" - image: xcode9.3 xcode: "9.3" osx_version: "10.13" @@ -681,19 +1432,3 @@ osx_images: - "tvOS 9.1" - "tvOS 9.2" jdk: "1.8.0_92-b14" - - image: xcode6.4 - xcode: "6.4" - osx_version: "10.10" - xcode_full_version: "6.4" - xcode_build_version: "6E35b" - sdks: - - macosx10.9 - - macosx10.10 - - iphoneos8.4 - - iphonesimulator8.4 - simulators: - - "iOS 7.1" - - "iOS 8.1" - - "iOS 8.2" - - "iOS 8.4" - jdk: "1.8.0_45-b14" diff --git a/_includes/c11-cpp11-and-beyond-and-toolchains.md b/_includes/c11-cpp11-and-beyond-and-toolchains.md index e4977c08738..398cd77c24e 100644 --- a/_includes/c11-cpp11-and-beyond-and-toolchains.md +++ b/_includes/c11-cpp11-and-beyond-and-toolchains.md @@ -1,13 +1,14 @@ ## C11/C++11 (and Beyond) and Toolchain Versioning -If your project requires tools compatible with C11, C++11, or a more recent language standard, then it is likely that you will have to upgrade your compiler and/or build tools. This section covers specifically how to upgrade GCC, clang, and cmake; for other dependencies please see [Installing Dependencies](/user/installing-dependencies/). +If your project requires tools compatible with C11, C++11, or a more recent language standard, you will likely need to upgrade your compiler and/or build tools. This section covers specifically how to upgrade GCC, clang, and cmake; for other dependencies, please see [Installing Dependencies](/user/installing-dependencies/). ### GCC on Linux -* [Precise](/user/reference/precise) ships with GCC 4.6.3 -* [Trusty](/user/reference/trusty) ships with GCC 4.8.2 -* [Xenial](/user/reference/xenial) ships with GCC 5.4.0 -* [Bionic](/user/reference/bionic) ships with GCC 7.4.0 +* [Xenial](/user/reference/xenial/) ships with GCC 5.4.0 +* [Bionic](/user/reference/bionic/) ships with GCC 7.4.0 +* [Focal](/user/reference/focal/) ships with GCC 9.4.0 +* [Jammy](/user/reference/jammy/) ships with GCC 11.4.0 +* [Noble](/user/reference/noble/) ships with GCC 13.3.0 Note that [GCC support for ISO C11 reached a similar level of completeness as ISO C99 in 4.9](https://gcc.gnu.org/wiki/C11Status) and that C++11 is feature-complete in 5.1 (the C++ language support was feature-complete in 4.8.1 but the standard library didn't support all C++11 features until [later](https://gcc.gnu.org/gcc-5/changes.html#libstdcxx), in particular [support for `` does not exist until 4.9](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53631)). @@ -16,7 +17,6 @@ To upgrade GCC to a more recent version, you will have to install the appropriat ```yaml matrix: include: - # works on Precise and Trusty - os: linux addons: apt: @@ -27,7 +27,6 @@ matrix: env: - MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9" - # works on Precise and Trusty - os: linux addons: apt: @@ -38,7 +37,6 @@ matrix: env: - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5" - # works on Precise and Trusty - os: linux addons: apt: @@ -49,7 +47,6 @@ matrix: env: - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" - # works on Precise and Trusty - os: linux addons: apt: @@ -65,163 +62,76 @@ before_install: ``` {: data-file=".travis.yml"} -### GCC on macOS +### GCC on FreeBSD -On macOS, `gcc` is an alias for `clang`, and `g++` is an alias for `clang++`. -So you must set CC and CXX to specific `gcc`/`g++` versions: +Travis CI FreeBSD image ships with GCC 10.0.0 (it's not in the base system by default). -```yaml -matrix: - include: - - os: osx - osx_image: xcode8 - env: - - MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9" +To upgrade GCC to a more recent version, install the appropriate version from packages; see below for examples: - - os: osx - osx_image: xcode8 - env: - - MATRIX_EVAL="brew install gcc5 && CC=gcc-5 && CXX=g++-5" - - - os: osx - osx_image: xcode8 - env: - - MATRIX_EVAL="brew install gcc6 && CC=gcc-6 && CXX=g++-6" - - - os: osx - osx_image: xcode8 - env: - - MATRIX_EVAL="brew install gcc && CC=gcc-7 && CXX=g++-7" - -before_install: - - eval "${MATRIX_EVAL}" +```yaml +os: freebsd +addons: + pkg: + - gcc10 + env: + - CC=gcc10 + - CXX=g++10 ``` {: data-file=".travis.yml"} ### Clang on Linux -* [Precise](/user/reference/precise) ships with Clang 3.4 -* [Trusty](/user/reference/trusty) ships with Clang 3.5.0 -* [Xenial](/user/reference/xenial) ships with Clang 7 -* [Bionic](/user/reference/bionic) ships with Clang 7 - -Note that [C++11 support is complete starting from Clang 3.3](http://clang.llvm.org/cxx_status.html). +* [Xenial](/user/reference/xenial/) ships with Clang 7 +* [Bionic](/user/reference/bionic/) ships with Clang 18.1.8 +* [Focal](/user/reference/focal/) ships with Clang 18.1.8 +* [Jammy](/user/reference/jammy/) ships with Clang 18.1.8 +* [Noble](/user/reference/noble/) ships with Clang 18.1.3 -To upgrade Clang to a more recent version, you will have to install the appropriate version from a `llvm-toolchain-*` source (the `ubuntu-toolchain-r-test` source must also be pulled in for dependency resolution); see below for examples: +To upgrade Clang to a more recent version, it is necessary to install the appropriate version from a `llvm-toolchain-*` source (the `ubuntu-toolchain-r-test` source must also be pulled in for dependency resolution); see below for a Focal example: ```yaml matrix: include: - # works on Precise and Trusty - os: linux addons: apt: sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.6 + - llvm-toolchain-focal-18 packages: - - clang-3.6 + - clang-18 env: - - MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6" - - # works on Precise and Trusty - - os: linux - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.7 - packages: - - clang-3.7 - env: - - MATRIX_EVAL="CC=clang-3.7 && CXX=clang++-3.7" - - # works on Precise and Trusty - - os: linux - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.8 - packages: - - clang-3.8 - env: - - MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" - - # works on Trusty - - os: linux - addons: - apt: - sources: - - llvm-toolchain-trusty-3.9 - packages: - - clang-3.9 - env: - - MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9" - - # works on Trusty - - os: linux - addons: - apt: - sources: - - llvm-toolchain-trusty-4.0 - packages: - - clang-4.0 - env: - - MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0" - - # works on Trusty - - os: linux - addons: - apt: - sources: - - llvm-toolchain-trusty-5.0 - packages: - - clang-5.0 - env: - - MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0" - -before_install: - - eval "${MATRIX_EVAL}" + - MATRIX_EVAL="CC=clang-18 && CXX=clang++-18" ``` {: data-file=".travis.yml"} -### Clang on macOS -On macOS, the version of `clang` is controlled by the choice of `osx_image`. -You can find [here](/user/reference/osx/#macos-version) the list of available `osx_image`. - -```yaml -matrix: -  include: -    - os: osx -      osx_image: xcode10.1 - - - os: osx -      osx_image: xcode9.4 -``` -{: data-file=".travis.yml"} - -You can find the `clang` version shipped by Xcode [here](https://trac.macports.org/wiki/XcodeVersionInfo). +### Clang on FreeBSD -#### CMake +> Clang is the default compiler on FreeBSD. -* [Precise](/user/reference/precise) ships with CMake 2.8.7 -* [Trusty](/user/reference/trusty) ships with CMake 3.9.2 -* [Xenial](/user/reference/xenial) ships with CMake 3.12.4 -* [Bionic](/user/reference/bionic) ships with CMake 3.12.4 +FreeBSD ships with Clang 8.0.1. -You can upgrade cmake to 3.2.3 on Precise from the `george-edison55-precise-backports` source (note that the `cmake-data` package contains dependencies which Aptitude does not automatically resolve), c.f. +To upgrade Clang to a more recent version, install the appropriate version from packages; see below for examples: ```yaml +os: freebsd addons: - apt: - sources: - - george-edison55-precise-backports - packages: - - cmake-data - - cmake + pkg: + - llvm90 + env: + - CC=/usr/local/bin/clang90 # llvm90 installs it to /usr/local/bin/clang90 + - CXX=/usr/local/bin/clang++90 # llvm90 installs it to /usr/local/bin/clang++90 ``` {: data-file=".travis.yml"} -On macOS, the version of `cmake` is controlled by the choice of `osx_image`. +> Clang is the default compiler on FreeBSD. + +#### CMake + +* [Bionic](/user/reference/bionic/) ships with CMake 3.26.3 +* [Focal](/user/reference/focal/) ships with Clang 4.2.0 +* [Jammy](/user/reference/jammy/) ships with Clang 4.2.0 +* [Noble](/user/reference/noble/) ships with Clang 4.1.2 +* [FreeBSD](/user/reference/freebsd/) ships with CMake 3.15.5 + diff --git a/_includes/deploy/before_after_deploy.md b/_includes/deploy/before_after_deploy.md index a3d0581ed7a..907b6728750 100644 --- a/_includes/deploy/before_after_deploy.md +++ b/_includes/deploy/before_after_deploy.md @@ -2,7 +2,9 @@ Sometimes you want to run commands before or after deploying. -You can use the `before_deploy` and `after_deploy` steps for this. These will +You can use the `before_deploy` and `after_deploy` steps for this. + +> Please note: These will only be triggered if Travis CI is actually deploying. ```yaml diff --git a/_includes/deploy/opt_in.md b/_includes/deploy/opt_in.md index bfff233cb43..acfecf12730 100644 --- a/_includes/deploy/opt_in.md +++ b/_includes/deploy/opt_in.md @@ -1,12 +1,30 @@ -## How to opt in to v2 +## How to opt in to different deployment tooling versions -In order to use version `v2` of our deployment tooling, please add the +In order to use different version of our deployment tooling, please add the following to your `.travis.yml`: ```yaml deploy: provider: # ⋮ + dpl_version: # Optional, defaults to the latest stable version +``` +if you want to use the latest edge version of the deployment tooling: + +```yaml +deploy: + provider: + # ⋮ + edge: true +``` +if you want to use other edge version of the deployment tooling: + +```yaml +deploy: + provider: + # ⋮ + dpl_version: edge: true ``` + {: data-file=".travis.yml"} diff --git a/_includes/deploy/providers/anynines.md b/_includes/deploy/providers/anynines.md index 54957d29ced..abd299f3265 100644 --- a/_includes/deploy/providers/anynines.md +++ b/_includes/deploy/providers/anynines.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to Anynines is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Anynines is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -42,4 +42,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `ANYNINES_`. For example, `password` can be given as `ANYNINES_PASSWORD=`. -{% include deploy/secrets.md name="password" env_name="ANYNINES_PASSWORD" %} \ No newline at end of file + +{% include deploy/secrets.md name="password" env_name="ANYNINES_PASSWORD" %} diff --git a/_includes/deploy/providers/azure_web_apps.md b/_includes/deploy/providers/azure_web_apps.md index 6701b8b2e68..f5ab01c4f1c 100644 --- a/_includes/deploy/providers/azure_web_apps.md +++ b/_includes/deploy/providers/azure_web_apps.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to Azure Web Apps is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Azure Web Apps is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -39,4 +39,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AZURE_WA_`. For example, `password` can be given as `AZURE_WA_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="AZURE_WA_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/bintray.md b/_includes/deploy/providers/bintray.md index ccd32024aec..995dc7e00ee 100644 --- a/_includes/deploy/providers/bintray.md +++ b/_includes/deploy/providers/bintray.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to Bintray is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Bintray is **stable**. ## Known options Use the following options to further configure the deployment. @@ -38,4 +38,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `BINTRAY_`. For example, `key` can be given as `BINTRAY_KEY=`. -{% include deploy/secrets.md name="key" env_name="BINTRAY_KEY" %} \ No newline at end of file + +{% include deploy/secrets.md name="key" env_name="BINTRAY_KEY" %} diff --git a/_includes/deploy/providers/bluemixcloudfoundry.md b/_includes/deploy/providers/bluemixcloudfoundry.md index ded7167923e..3169a66aa56 100644 --- a/_includes/deploy/providers/bluemixcloudfoundry.md +++ b/_includes/deploy/providers/bluemixcloudfoundry.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to Bluemix Cloud Foundry is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Bluemix Cloud Foundry is **stable**. ## Known options Use the following options to further configure the deployment. @@ -45,4 +45,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `CLOUDFOUNDRY_`. For example, `password` can be given as `CLOUDFOUNDRY_PASSWORD=`. -{% include deploy/secrets.md name="password" env_name="CLOUDFOUNDRY_PASSWORD" %} \ No newline at end of file + +{% include deploy/secrets.md name="password" env_name="CLOUDFOUNDRY_PASSWORD" %} diff --git a/_includes/deploy/providers/boxfuse.md b/_includes/deploy/providers/boxfuse.md index a52b09e95b1..98779acb3ec 100644 --- a/_includes/deploy/providers/boxfuse.md +++ b/_includes/deploy/providers/boxfuse.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Boxfuse is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Boxfuse is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -41,4 +41,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `BOXFUSE_`. For example, `secret` can be given as `BOXFUSE_SECRET=`. + {% include deploy/secrets.md name="secret" env_name="BOXFUSE_SECRET" %} \ No newline at end of file diff --git a/_includes/deploy/providers/cargo.md b/_includes/deploy/providers/cargo.md index bada41b914f..d3809add71f 100644 --- a/_includes/deploy/providers/cargo.md +++ b/_includes/deploy/providers/cargo.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Cargo is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Cargo is **stable**. ## Known options Use the following options to further configure the deployment. @@ -34,4 +34,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `CARGO_`. For example, `token` can be given as `CARGO_TOKEN=`. -{% include deploy/secrets.md name="token" env_name="CARGO_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="CARGO_TOKEN" %} diff --git a/_includes/deploy/providers/chef_supermarket.md b/_includes/deploy/providers/chef_supermarket.md index 6af65873ed2..f0d3051e96f 100644 --- a/_includes/deploy/providers/chef_supermarket.md +++ b/_includes/deploy/providers/chef_supermarket.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Chef Supermarket is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Chef Supermarket is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -33,3 +33,4 @@ Use the following options to further configure the deployment. | `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | | `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + diff --git a/_includes/deploy/providers/cloud66.md b/_includes/deploy/providers/cloud66.md index 07f1d46e27a..8cdd9ec964c 100644 --- a/_includes/deploy/providers/cloud66.md +++ b/_includes/deploy/providers/cloud66.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Cloud66 is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Cloud66 is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -33,4 +33,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `CLOUD66_`. For example, `redeployment_hook` can be given as `CLOUD66_REDEPLOYMENT_HOOK=`. + {% include deploy/secrets.md name="redeployment_hook" env_name="CLOUD66_REDEPLOYMENT_HOOK" %} \ No newline at end of file diff --git a/_includes/deploy/providers/cloudfiles.md b/_includes/deploy/providers/cloudfiles.md index 5eb4c4a7490..0ae34b1bb1f 100644 --- a/_includes/deploy/providers/cloudfiles.md +++ b/_includes/deploy/providers/cloudfiles.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to Cloud Files is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Cloud Files is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -41,4 +41,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `CLOUDFILES_`. For example, `api_key` can be given as `CLOUDFILES_API_KEY=`. + {% include deploy/secrets.md name="api_key" env_name="CLOUDFILES_API_KEY" %} \ No newline at end of file diff --git a/_includes/deploy/providers/cloudformation.md b/_includes/deploy/providers/cloudformation.md index 19681da6714..0d965061622 100644 --- a/_includes/deploy/providers/cloudformation.md +++ b/_includes/deploy/providers/cloudformation.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to AWS CloudFormation is in **development**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS CloudFormation is **stable**. ## Known options Use the following options to further configure the deployment. @@ -37,7 +37,6 @@ Use the following options to further configure the deployment. | `wait` | Wait for CloutFormation to finish the stack creation and update — type: boolean, default: `true` | | `wait_timeout` | How many seconds to wait for stack creation and update. — type: integer, default: `3600` | | `create_timeout` | How many seconds to wait before the stack status becomes CREATE_FAILED — type: integer, default: `3600`, note: valid only when creating a stack | -| `session_token` | AWS Session Access Token if using STS assume role — type: string, note: Not recommended on CI/CD | | `parameters` | key=value pairs or ENV var names — type: string or array of strings | | `output_file` | Path to output file to store CloudFormation outputs to — type: string | @@ -50,8 +49,9 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `CLOUDFORMATION_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `CLOUDFORMATION_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/cloudfoundry.md b/_includes/deploy/providers/cloudfoundry.md index 34354a612ff..02f962189b4 100644 --- a/_includes/deploy/providers/cloudfoundry.md +++ b/_includes/deploy/providers/cloudfoundry.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to Cloud Foundry is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Cloud Foundry is **stable**. ## Known options Use the following options to further configure the deployment. @@ -33,6 +33,7 @@ Use the following options to further configure the deployment. | `buildpack` | Buildpack name or Git URL — type: string | | `manifest` | Path to the manifest — type: string | | `skip_ssl_validation` | Skip SSL validation — type: boolean | +| `deployment_strategy` | Deployment strategy, either rolling or null — type: string | | `v3` | Use the v3 API version to push the application — type: boolean | ### Shared options @@ -45,4 +46,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `CLOUDFOUNDRY_`. For example, `password` can be given as `CLOUDFOUNDRY_PASSWORD=`. -{% include deploy/secrets.md name="password" env_name="CLOUDFOUNDRY_PASSWORD" %} \ No newline at end of file + +{% include deploy/secrets.md name="password" env_name="CLOUDFOUNDRY_PASSWORD" %} diff --git a/_includes/deploy/providers/codedeploy.md b/_includes/deploy/providers/codedeploy.md index e68e5632b52..2fbcdb82256 100644 --- a/_includes/deploy/providers/codedeploy.md +++ b/_includes/deploy/providers/codedeploy.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to AWS Code Deploy is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS Code Deploy is **stable**. ## Known options Use the following options to further configure the deployment. @@ -48,8 +48,42 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `CODEDEPLOY_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `CODEDEPLOY_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file +## Interpolation variables + +The following variables are available for interpolation on `description`: + +* `application` +* `bucket` +* `bundle_type` +* `commit_id` +* `deployment_group` +* `endpoint` +* `file_exists_behavior` +* `git_author_email` +* `git_author_name` +* `git_branch` +* `git_commit_author` +* `git_commit_msg` +* `git_sha` +* `git_tag` +* `key` +* `region` +* `repository` +* `revision_type` +* `build_number` + +Interpolation uses the syntax `%{variable-name}`. For example, +`"Current commit sha: %{git_sha}"` would result in a string with the +current Git sha embedded. + +Furthermore, environment variables present in the current build +environment can be used through standard Bash variable interpolation. +For example: "Current build number: ${TRAVIS_BUILD_NUMBER}". +See [here](/user/environment-variables/#default-environment-variables) +for a list of default environment variables set. + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/convox.md b/_includes/deploy/providers/convox.md index 6342a701922..0a973f9be63 100644 --- a/_includes/deploy/providers/convox.md +++ b/_includes/deploy/providers/convox.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to Convox is in **development**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Convox is in **development**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -31,13 +31,16 @@ Use the following options to further configure the deployment. | `update_cli` | type: boolean | | `create` | type: boolean | | `promote` | type: boolean, default: `true` | +| `env_names` | type: string or array of strings | | `env` | type: string or array of strings | | `env_file` | type: string | | `description` | type: string | | `generation` | type: integer, default: `2` | +| `prepare` | Run commands with convox cli available just before deployment — type: string or array of strings | ### Shared options | `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | | `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + diff --git a/_includes/deploy/providers/datica.md b/_includes/deploy/providers/datica.md index f19510ed725..911d7355007 100644 --- a/_includes/deploy/providers/datica.md +++ b/_includes/deploy/providers/datica.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Datica is in **development**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Datica is in **development**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -29,3 +29,4 @@ Use the following options to further configure the deployment. | `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | | `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + diff --git a/_includes/deploy/providers/elasticbeanstalk.md b/_includes/deploy/providers/elasticbeanstalk.md index bf98623e98a..bf8dd54a596 100644 --- a/_includes/deploy/providers/elasticbeanstalk.md +++ b/_includes/deploy/providers/elasticbeanstalk.md @@ -6,7 +6,6 @@ deploy: provider: elasticbeanstalk access_key_id: secret_access_key: - env: bucket: edge: true # opt in to dpl v2 ``` @@ -19,7 +18,7 @@ deploy: ## Status -Support for deployments to AWS Elastic Beanstalk is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS Elastic Beanstalk is **stable**. ## Known options Use the following options to further configure the deployment. @@ -28,14 +27,14 @@ Use the following options to further configure the deployment. | `secret_access_key` | AWS Secret Key — **required**, **secret**, type: string | | `region` | AWS Region the Elastic Beanstalk app is running in — type: string, default: `us-east-1` | | `app` | Elastic Beanstalk application name — type: string, default: `repo name` | -| `env` | Elastic Beanstalk environment name which will be updated — **required**, type: string | +| `env` | Elastic Beanstalk environment name to be updated. — type: string | | `bucket` | Bucket name to upload app to — **required**, type: string, alias: `bucket_name` | | `bucket_path` | Location within Bucket to upload app to — type: string | | `description` | Description for the application version — type: string | | `label` | Label for the application version — type: string | -| `zip_file` | The zip file that you want to deploy — type: string | -| `only_create_app_version` | Only create the app version, do not actually deploy it — type: boolean | -| `wait_until_deployed` | Wait until the deployment has finished — type: boolean | +| `zip_file` | The zip file that you want to deploy. If not given, a zipfile will be created from the current directory, honoring .ebignore and .gitignore. — type: string | +| `wait_until_deployed` | Wait until the deployment has finished — type: boolean, requires: `env` | +| `wait_until_deployed_timeout` | How many seconds to wait for Elastic Beanstalk deployment update. — type: integer, default: `600` | ### Shared options @@ -46,8 +45,9 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `ELASTIC_BEANSTALK_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `ELASTIC_BEANSTALK_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/engineyard.md b/_includes/deploy/providers/engineyard.md index eaeb09bc029..ad71d5e4221 100644 --- a/_includes/deploy/providers/engineyard.md +++ b/_includes/deploy/providers/engineyard.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to Engineyard is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Engineyard is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. Either `api_key` or `email` and `password` are required. @@ -47,8 +47,9 @@ Use the following options to further configure the deployment. Either `api_key` All options can be given as environment variables if prefixed with `ENGINEYARD_` or `EY_`. -For example, `api_key` can be given as +For example, `api_key` can be given as -* `ENGINEYARD_API_KEY=` or +* `ENGINEYARD_API_KEY=` or * `EY_API_KEY=` + {% include deploy/secrets.md name="api_key" env_name="ENGINEYARD_API_KEY" %} \ No newline at end of file diff --git a/_includes/deploy/providers/firebase.md b/_includes/deploy/providers/firebase.md index d3c427a1b96..d6b412961c9 100644 --- a/_includes/deploy/providers/firebase.md +++ b/_includes/deploy/providers/firebase.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Firebase is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Firebase is **stable**. ## Known options Use the following options to further configure the deployment. @@ -37,4 +37,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `FIREBASE_`. For example, `token` can be given as `FIREBASE_TOKEN=`. -{% include deploy/secrets.md name="token" env_name="FIREBASE_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="FIREBASE_TOKEN" %} diff --git a/_includes/deploy/providers/flynn.md b/_includes/deploy/providers/flynn.md new file mode 100644 index 00000000000..3c913c4bbdf --- /dev/null +++ b/_includes/deploy/providers/flynn.md @@ -0,0 +1,31 @@ +{% unless include.minimal == false %} +For a minimal configuration, add the following to your `.travis.yml`: + +```yaml +deploy: + provider: flynn + git: + edge: true # opt in to dpl v2 +``` +{: data-file=".travis.yml"} + + + +{{ include.content }} +{% endunless %} + +## Status + +Support for deployments to Flynn is in **development**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. +## Known options + +Use the following options to further configure the deployment. + +| `git` | Flynn Git remote URL — **required**, type: string | + +### Shared options + +| `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | +| `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + + diff --git a/_includes/deploy/providers/gae.md b/_includes/deploy/providers/gae.md index 4a08cb4a73c..93ba9235b45 100644 --- a/_includes/deploy/providers/gae.md +++ b/_includes/deploy/providers/gae.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Google App Engine is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Google App Engine is **stable**. ## Known options Use the following options to further configure the deployment. @@ -35,3 +35,4 @@ Use the following options to further configure the deployment. | `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | | `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + diff --git a/_includes/deploy/providers/gcs.md b/_includes/deploy/providers/gcs.md index 126d830b5e5..6d6e5ec6d22 100644 --- a/_includes/deploy/providers/gcs.md +++ b/_includes/deploy/providers/gcs.md @@ -27,7 +27,7 @@ deploy: ## Status -Support for deployments to Google Cloud Store is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Google Cloud Store is **stable**. ## Known options Use the following options to further configure the deployment. Either `key_file` or `access_key_id` and `secret_access_key` are required. @@ -54,4 +54,5 @@ Use the following options to further configure the deployment. Either `key_file` All options can be given as environment variables if prefixed with `GCS_`. For example, `access_key_id` can be given as `GCS_ACCESS_KEY_ID=`. -{% include deploy/secrets.md name="access_key_id" env_name="GCS_ACCESS_KEY_ID" %} \ No newline at end of file + +{% include deploy/secrets.md name="access_key_id" env_name="GCS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/git_push.md b/_includes/deploy/providers/git_push.md new file mode 100644 index 00000000000..1f285ba4b4b --- /dev/null +++ b/_includes/deploy/providers/git_push.md @@ -0,0 +1,95 @@ +{% unless include.minimal == false %} +For a minimal configuration, add the following to your `.travis.yml`: + +```yaml +deploy: + provider: git_push + token: + branch: + edge: true # opt in to dpl v2 +``` +{: data-file=".travis.yml"} + +Alternatively, you can use `deploy_key`, `name` and `email`: + +```yaml +deploy: + provider: git_push + deploy_key: + name: + email: + branch: +``` +{: data-file=".travis.yml"} + + +{{ include.content }} +{% endunless %} + +## Status + +Support for deployments to Git (push) is in **development**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. +## Known options + +Use the following options to further configure the deployment. Either `token` or `deploy_key`, `name` and `email` are required. + +| `repo` | Repo slug — type: string, default: `repo slug` | +| `token` | GitHub token with repo permission — **secret**, type: string, alias: `github_token` | +| `deploy_key` | Path to a file containing a private deploy key with write access to the repository — type: string, see: [https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys](https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys) | +| `branch` | Target branch to push to — **required**, type: string | +| `base_branch` | Base branch to branch off initially, and (optionally) create a pull request for — type: string, default: `master` | +| `name` | Committer name — type: string, note: defaults to the GitHub name or login associated with the GitHub token | +| `email` | Committer email — type: string, note: defaults to the GitHub email associated with the GitHub token | +| `commit_message` | type: string, default: `Update %{base_branch}` | +| `allow_empty_commit` | Allow an empty commit to be created — type: boolean | +| `force` | Whether to push --force — type: boolean, default: `false` | +| `local_dir` | Local directory to push — type: string, default: `.` | +| `pull_request` | Whether to create a pull request for the given branch — type: boolean | +| `allow_same_branch` | Whether to allow pushing to the same branch as the current branch — type: boolean, default: `false`, note: setting this to true risks creating infinite build loops, use conditional builds or other mechanisms to prevent build from infinitely triggering more builds | +| `host` | type: string, default: `github.com` | +| `enterprise` | Whether to use a GitHub Enterprise API style URL — type: boolean | + +### Shared options + +| `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | +| `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + +## Environment variables + +All options can be given as environment variables if prefixed with `GITHUB_` or `GIT_`. + +For example, `token` can be given as + +* `GITHUB_TOKEN=` or +* `GIT_TOKEN=` +## Interpolation variables + +The following variables are available for interpolation on `commit_message`: + +* `base_branch` +* `branch` +* `deploy_key` +* `email` +* `git_author_email` +* `git_author_name` +* `git_branch` +* `git_commit_author` +* `git_commit_msg` +* `git_sha` +* `git_tag` +* `host` +* `local_dir` +* `name` +* `repo` + +Interpolation uses the syntax `%{variable-name}`. For example, +`"Current commit sha: %{git_sha}"` would result in a string with the +current Git sha embedded. + +Furthermore, environment variables present in the current build +environment can be used through standard Bash variable interpolation. +For example: "Current build number: ${TRAVIS_BUILD_NUMBER}". +See [here](/user/environment-variables/#default-environment-variables) +for a list of default environment variables set. + +{% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} \ No newline at end of file diff --git a/_includes/deploy/providers/gleis.md b/_includes/deploy/providers/gleis.md index 7c659bd5efe..d5bcf69fafb 100644 --- a/_includes/deploy/providers/gleis.md +++ b/_includes/deploy/providers/gleis.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Gleis is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Gleis is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -38,4 +38,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `GLEIS_`. For example, `password` can be given as `GLEIS_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="GLEIS_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/hackage.md b/_includes/deploy/providers/hackage.md index 7b7f1ec300e..c3e519ed15f 100644 --- a/_includes/deploy/providers/hackage.md +++ b/_includes/deploy/providers/hackage.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Hackage is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Hackage is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -36,4 +36,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `HACKAGE_`. For example, `password` can be given as `HACKAGE_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="HACKAGE_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/hephy.md b/_includes/deploy/providers/hephy.md index 445380d709f..541d59a704f 100644 --- a/_includes/deploy/providers/hephy.md +++ b/_includes/deploy/providers/hephy.md @@ -19,7 +19,7 @@ deploy: ## Status -Support for deployments to Hephy is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Hephy is in **beta**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -41,4 +41,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `HEPHY_`. For example, `password` can be given as `HEPHY_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="HEPHY_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/heroku_api.md b/_includes/deploy/providers/heroku_api.md index a8e3ea77eed..d7acd881a8b 100644 --- a/_includes/deploy/providers/heroku_api.md +++ b/_includes/deploy/providers/heroku_api.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Heroku API is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Heroku API is **stable**. ## Known options Use the following options to further configure the deployment. @@ -35,4 +35,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `HEROKU_`. For example, `api_key` can be given as `HEROKU_API_KEY=`. -{% include deploy/secrets.md name="api_key" env_name="HEROKU_API_KEY" %} \ No newline at end of file + +{% include deploy/secrets.md name="api_key" env_name="HEROKU_API_KEY" %} diff --git a/_includes/deploy/providers/heroku_git.md b/_includes/deploy/providers/heroku_git.md index 46eb8aa3b8c..a1bd678c96a 100644 --- a/_includes/deploy/providers/heroku_git.md +++ b/_includes/deploy/providers/heroku_git.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to Heroku Git is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Heroku Git is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. Either `api_key` or `username` and `password` are required. @@ -47,4 +47,5 @@ Use the following options to further configure the deployment. Either `api_key` All options can be given as environment variables if prefixed with `HEROKU_`. For example, `api_key` can be given as `HEROKU_API_KEY=`. + {% include deploy/secrets.md name="api_key" env_name="HEROKU_API_KEY" %} \ No newline at end of file diff --git a/_includes/deploy/providers/lambda.md b/_includes/deploy/providers/lambda.md index 997640a7aed..7b1d720b45e 100644 --- a/_includes/deploy/providers/lambda.md +++ b/_includes/deploy/providers/lambda.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to AWS Lambda is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS Lambda is **stable**. ## Known options Use the following options to further configure the deployment. @@ -36,7 +36,7 @@ Use the following options to further configure the deployment. | `subnet_ids` | List of subnet IDs to be added to the function — type: string or array of strings, note: Needs the ec2:DescribeSubnets and ec2:DescribeVpcs permission for the user of the access/secret key to work | | `security_group_ids` | List of security group IDs to be added to the function — type: string or array of strings, note: Needs the ec2:DescribeSecurityGroups and ec2:DescribeVpcs permission for the user of the access/secret key to work | | `environment` | List of Environment Variables to add to the function — type: string or array of strings, alias: `environment_variables`, format: `/[\w\-]+=.+/`, note: Can be encrypted for added security | -| `runtime` | Lambda runtime to use — type: string, default: `nodejs8.10`, known values: `java8`, `nodejs8.10`, `nodejs10.x`, `python2.7`, `python3.6`, `python3.7`, `dotnetcore2.1`, `go1.x`, `ruby2.5`, note: required when creating a new function | +| `runtime` | Lambda runtime to use — type: string, default: `nodejs10.x`, known values: `nodejs12.x`, `nodejs10.x`, `python3.8`, `python3.7`, `python3.6`, `python2.7`, `ruby2.7`, `ruby2.5`, `java11`, `java8`, `go1.x`, `dotnetcore2.1`, note: required when creating a new function | | `dead_letter_arn` | ARN to an SNS or SQS resource used for the dead letter queue. — type: string | | `kms_key_arn` | KMS key ARN to use to encrypt environment_variables. — type: string | | `tracing_mode` | Tracing mode — type: string, default: `PassThrough`, known values: `Active`, `PassThrough`, note: Needs xray:PutTraceSegments xray:PutTelemetryRecords on the role | @@ -55,8 +55,42 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `LAMBDA_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `LAMBDA_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file +## Interpolation variables + +The following variables are available for interpolation on `description`: + +* `dead_letter_arn` +* `function_name` +* `git_author_email` +* `git_author_name` +* `git_branch` +* `git_commit_author` +* `git_commit_msg` +* `git_sha` +* `git_tag` +* `handler_name` +* `kms_key_arn` +* `memory_size` +* `module_name` +* `region` +* `role` +* `runtime` +* `timeout` +* `tracing_mode` +* `zip` + +Interpolation uses the syntax `%{variable-name}`. For example, +`"Current commit sha: %{git_sha}"` would result in a string with the +current Git sha embedded. + +Furthermore, environment variables present in the current build +environment can be used through standard Bash variable interpolation. +For example: "Current build number: ${TRAVIS_BUILD_NUMBER}". +See [here](/user/environment-variables/#default-environment-variables) +for a list of default environment variables set. + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/launchpad.md b/_includes/deploy/providers/launchpad.md index 47f86d1462b..734da3366da 100644 --- a/_includes/deploy/providers/launchpad.md +++ b/_includes/deploy/providers/launchpad.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Launchpad is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Launchpad is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -35,4 +35,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `LAUNCHPAD_`. For example, `oauth_token` can be given as `LAUNCHPAD_OAUTH_TOKEN=`. + {% include deploy/secrets.md name="oauth_token" env_name="LAUNCHPAD_OAUTH_TOKEN" %} \ No newline at end of file diff --git a/_includes/deploy/providers/netlify.md b/_includes/deploy/providers/netlify.md index 11fb63b2a04..fce3ca7529e 100644 --- a/_includes/deploy/providers/netlify.md +++ b/_includes/deploy/providers/netlify.md @@ -8,16 +8,16 @@ deploy: auth: edge: true # opt in to dpl v2 ``` -{: data-file=".travis.yml"} - +{: data-file=".travis.yml"} {{ include.content }} {% endunless %} ## Status -Support for deployments to Netlify is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Netlify is **stable**. + ## Known options Use the following options to further configure the deployment. @@ -39,4 +39,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `NETLIFY_`. For example, `auth` can be given as `NETLIFY_AUTH=`. -{% include deploy/secrets.md name="auth" env_name="NETLIFY_AUTH" %} \ No newline at end of file + +{% include deploy/secrets.md name="auth" env_name="NETLIFY_AUTH" %} diff --git a/_includes/deploy/providers/npm.md b/_includes/deploy/providers/npm.md index 52f49e30413..c32c7a307e5 100644 --- a/_includes/deploy/providers/npm.md +++ b/_includes/deploy/providers/npm.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to npm is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to npm is **stable**. ## Known options Use the following options to further configure the deployment. @@ -27,6 +27,7 @@ Use the following options to further configure the deployment. | `registry` | npm registry url — type: string | | `src` | directory or tarball to publish — type: string, default: `.` | | `tag` | distribution tags to add — type: string | +| `run_script` | run the given script from package.json — type: string or array of strings, note: skips running npm publish | | `dry_run` | performs test run without uploading to registry — type: boolean | | `auth_method` | Authentication method — type: string, known values: `auth` | @@ -40,4 +41,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `NPM_`. For example, `api_token` can be given as `NPM_API_TOKEN=`. -{% include deploy/secrets.md name="api_token" env_name="NPM_API_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="api_token" env_name="NPM_API_TOKEN" %} diff --git a/_includes/deploy/providers/nuget.md b/_includes/deploy/providers/nuget.md new file mode 100644 index 00000000000..97642bc9093 --- /dev/null +++ b/_includes/deploy/providers/nuget.md @@ -0,0 +1,45 @@ +{% unless include.minimal == false %} +For a minimal configuration, add the following to your `.travis.yml`: + +```yaml +deploy: + provider: nuget + api_key: + registry: + edge: true # opt in to dpl v2 +``` +{: data-file=".travis.yml"} + + + +{{ include.content }} +{% endunless %} + +## Status + +Support for deployments to nuget is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. +## Known options + +Use the following options to further configure the deployment. + +| `api_key` | NuGet registry API key — **required**, **secret**, type: string, note: can be retrieved from your NuGet registry provider, see: [https://docs.npmjs.com/creating-and-viewing-authentication-tokens](https://docs.npmjs.com/creating-and-viewing-authentication-tokens) | +| `registry` | NuGet registry url — **required**, type: string | +| `src` | The nupkg file(s) to publish — type: string, default: `*.nupkg` | +| `no_symbols` | Do not push symbols, even if present — type: boolean | +| `skip_duplicate` | Do not overwrite existing packages — type: boolean | + +### Shared options + +| `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | +| `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + +## Environment variables + +All options can be given as environment variables if prefixed with `NUGET_` or `DOTNET_`. + +For example, `api_key` can be given as + +* `NUGET_API_KEY=` or +* `DOTNET_API_KEY=` + +{% include deploy/secrets.md name="api_key" env_name="NUGET_API_KEY" %} \ No newline at end of file diff --git a/_includes/deploy/providers/openshift.md b/_includes/deploy/providers/openshift.md index 871a669236b..550d9a44d21 100644 --- a/_includes/deploy/providers/openshift.md +++ b/_includes/deploy/providers/openshift.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to OpenShift is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to OpenShift is **stable**. ## Known options Use the following options to further configure the deployment. @@ -38,4 +38,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `OPENSHIFT_`. For example, `token` can be given as `OPENSHIFT_TOKEN=`. -{% include deploy/secrets.md name="token" env_name="OPENSHIFT_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="OPENSHIFT_TOKEN" %} diff --git a/_includes/deploy/providers/opsworks.md b/_includes/deploy/providers/opsworks.md index 29acec0024b..f25a64cfb71 100644 --- a/_includes/deploy/providers/opsworks.md +++ b/_includes/deploy/providers/opsworks.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to AWS OpsWorks is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS OpsWorks is **stable**. ## Known options Use the following options to further configure the deployment. @@ -43,8 +43,9 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `OPSWORKS_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `OPSWORKS_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/packagecloud.md b/_includes/deploy/providers/packagecloud.md index 5c2d62d3aa5..8152a593a73 100644 --- a/_includes/deploy/providers/packagecloud.md +++ b/_includes/deploy/providers/packagecloud.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to Packagecloud is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Packagecloud is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -44,4 +44,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `PACKAGECLOUD_`. For example, `token` can be given as `PACKAGECLOUD_TOKEN=`. + {% include deploy/secrets.md name="token" env_name="PACKAGECLOUD_TOKEN" %} \ No newline at end of file diff --git a/_includes/deploy/providers/pages_api.md b/_includes/deploy/providers/pages_api.md index 5c834858e24..98f09e21f10 100644 --- a/_includes/deploy/providers/pages_api.md +++ b/_includes/deploy/providers/pages_api.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to GitHub Pages (API) is in **development**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to GitHub Pages (API) is in **development**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -34,8 +34,9 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `GITHUB_` or `PAGES_`. -For example, `token` can be given as +For example, `token` can be given as -* `GITHUB_TOKEN=` or +* `GITHUB_TOKEN=` or * `PAGES_TOKEN=` + {% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} \ No newline at end of file diff --git a/_includes/deploy/providers/pages_git.md b/_includes/deploy/providers/pages_git.md index 5afe0a7f6f0..f39d2027440 100644 --- a/_includes/deploy/providers/pages_git.md +++ b/_includes/deploy/providers/pages_git.md @@ -24,13 +24,13 @@ deploy: ## Status -Support for deployments to GitHub Pages is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to GitHub Pages is **stable**. ## Known options Use the following options to further configure the deployment. Either `token` or `deploy_key` are required. | `repo` | Repo slug — type: string, default: `repo slug` | -| `token` | GitHub oauth token with repo permission — **secret**, type: string, alias: `github_token` | +| `token` | GitHub token with repo permission — **secret**, type: string, alias: `github_token` | | `deploy_key` | Path to a file containing a private deploy key with write access to the repository — type: string, see: [https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys](https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys) | | `target_branch` | Branch to push force to — type: string, default: `gh-pages` | | `keep_history` | Create incremental commit instead of doing push force — type: boolean, default: `true` | @@ -42,7 +42,7 @@ Use the following options to further configure the deployment. Either `token` or | `project_name` | Used in the commit message only (defaults to fqdn or the current repo slug) — type: string | | `name` | Committer name — type: string, note: defaults to the current git commit author name | | `email` | Committer email — type: string, note: defaults to the current git commit author email | -| `committer_from_gh` | Use the token's owner name and email for the commit — type: boolean, requires: `github_token` | +| `committer_from_gh` | Use the token's owner name and email for the commit — type: boolean, requires: `token` | | `deployment_file` | Enable creation of a deployment-info file — type: boolean | | `url` | type: string, alias: `github_url`, default: `github.com` | @@ -56,8 +56,39 @@ Use the following options to further configure the deployment. Either `token` or All options can be given as environment variables if prefixed with `GITHUB_` or `PAGES_`. -For example, `token` can be given as +For example, `token` can be given as -* `GITHUB_TOKEN=` or +* `GITHUB_TOKEN=` or * `PAGES_TOKEN=` -{% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} \ No newline at end of file +## Interpolation variables + +The following variables are available for interpolation on `commit_message`: + +* `deploy_key` +* `email` +* `fqdn` +* `git_author_email` +* `git_author_name` +* `git_branch` +* `git_commit_author` +* `git_commit_msg` +* `git_sha` +* `git_tag` +* `local_dir` +* `name` +* `project_name` +* `repo` +* `target_branch` +* `url` + +Interpolation uses the syntax `%{variable-name}`. For example, +`"Current commit sha: %{git_sha}"` would result in a string with the +current Git sha embedded. + +Furthermore, environment variables present in the current build +environment can be used through standard Bash variable interpolation. +For example: "Current build number: ${TRAVIS_BUILD_NUMBER}". +See [here](/user/environment-variables/#default-environment-variables) +for a list of default environment variables set. + +{% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} diff --git a/_includes/deploy/providers/puppetforge.md b/_includes/deploy/providers/puppetforge.md index 42b24153eba..72d6646fb8f 100644 --- a/_includes/deploy/providers/puppetforge.md +++ b/_includes/deploy/providers/puppetforge.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Puppet Forge is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Puppet Forge is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -36,4 +36,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `PUPPETFORGE_`. For example, `password` can be given as `PUPPETFORGE_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="PUPPETFORGE_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/pypi.md b/_includes/deploy/providers/pypi.md index 6579c6945b2..5140bd2d1a9 100644 --- a/_includes/deploy/providers/pypi.md +++ b/_includes/deploy/providers/pypi.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to PyPI is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to PyPI is **stable**. ## Known options Use the following options to further configure the deployment. @@ -45,4 +45,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `PYPI_`. For example, `password` can be given as `PYPI_PASSWORD=`. -{% include deploy/secrets.md name="password" env_name="PYPI_PASSWORD" %} \ No newline at end of file + +{% include deploy/secrets.md name="password" env_name="PYPI_PASSWORD" %} diff --git a/_includes/deploy/providers/releases.md b/_includes/deploy/providers/releases.md index f63e7d6608d..24c0b8e0506 100644 --- a/_includes/deploy/providers/releases.md +++ b/_includes/deploy/providers/releases.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to GitHub Releases is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to GitHub Releases is **stable**. ## Known options Use the following options to further configure the deployment. Either `token` or `username` and `password` are required. @@ -38,7 +38,7 @@ Use the following options to further configure the deployment. Either `token` or | `file_glob` | Interpret files as globs — type: boolean, default: `true` | | `overwrite` | Overwrite files with the same name — type: boolean | | `prerelease` | Identify the release as a prerelease — type: boolean | -| `release_number` | Release number (overide automatic release detection) — type: string | +| `release_number` | Release number (override automatic release detection) — type: string | | `release_notes` | Content for the release notes — type: string, alias: `body` | | `release_notes_file` | Path to a file containing the release notes — type: string, note: will be ignored if --release_notes is given | | `draft` | Identify the release as a draft — type: boolean | @@ -55,8 +55,9 @@ Use the following options to further configure the deployment. Either `token` or All options can be given as environment variables if prefixed with `GITHUB_` or `RELEASES_`. -For example, `token` can be given as +For example, `token` can be given as -* `GITHUB_TOKEN=` or +* `GITHUB_TOKEN=` or * `RELEASES_TOKEN=` -{% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="GITHUB_TOKEN" %} diff --git a/_includes/deploy/providers/rubygems.md b/_includes/deploy/providers/rubygems.md index fc9a264177c..c8d41a71c81 100644 --- a/_includes/deploy/providers/rubygems.md +++ b/_includes/deploy/providers/rubygems.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to Rubygems is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Rubygems is **stable**. ## Known options Use the following options to further configure the deployment. Either `api_key` or `username` and `password` are required. @@ -48,4 +48,5 @@ Use the following options to further configure the deployment. Either `api_key` All options can be given as environment variables if prefixed with `RUBYGEMS_`. For example, `api_key` can be given as `RUBYGEMS_API_KEY=`. -{% include deploy/secrets.md name="api_key" env_name="RUBYGEMS_API_KEY" %} \ No newline at end of file + +{% include deploy/secrets.md name="api_key" env_name="RUBYGEMS_API_KEY" %} diff --git a/_includes/deploy/providers/s3.md b/_includes/deploy/providers/s3.md index 6985ed2b57f..2b169c12657 100644 --- a/_includes/deploy/providers/s3.md +++ b/_includes/deploy/providers/s3.md @@ -18,7 +18,7 @@ deploy: ## Status -Support for deployments to AWS S3 is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to AWS S3 is **stable**. ## Known options Use the following options to further configure the deployment. @@ -30,6 +30,7 @@ Use the following options to further configure the deployment. | `endpoint` | S3 endpoint — type: string | | `upload_dir` | S3 directory to upload to — type: string | | `local_dir` | Local directory to upload from — type: string, default: `.`, e.g.: ~/travis/build (absolute path) or ./build (relative path) | +| `glob` | Files to upload — type: string, default: `**/*` | | `dot_match` | Upload hidden files starting with a dot — type: boolean | | `acl` | Access control for the uploaded objects — type: string, default: `private`, known values: `private`, `public_read`, `public_read_write`, `authenticated_read`, `bucket_owner_read`, `bucket_owner_full_control` | | `detect_encoding` | HTTP header Content-Encoding for files compressed with gzip and compress utilities — type: boolean | @@ -53,8 +54,9 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `AWS_` or `S3_`. -For example, `access_key_id` can be given as +For example, `access_key_id` can be given as -* `AWS_ACCESS_KEY_ID=` or +* `AWS_ACCESS_KEY_ID=` or * `S3_ACCESS_KEY_ID=` -{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} \ No newline at end of file + +{% include deploy/secrets.md name="access_key_id" env_name="AWS_ACCESS_KEY_ID" %} diff --git a/_includes/deploy/providers/scalingo.md b/_includes/deploy/providers/scalingo.md index 7944033fe52..406a30df660 100644 --- a/_includes/deploy/providers/scalingo.md +++ b/_includes/deploy/providers/scalingo.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to Scalingo is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Scalingo is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. Either `api_token` or `username` and `password` are required. @@ -49,4 +49,5 @@ Use the following options to further configure the deployment. Either `api_token All options can be given as environment variables if prefixed with `SCALINGO_`. For example, `password` can be given as `SCALINGO_PASSWORD=`. + {% include deploy/secrets.md name="password" env_name="SCALINGO_PASSWORD" %} \ No newline at end of file diff --git a/_includes/deploy/providers/script.md b/_includes/deploy/providers/script.md index e6918601fca..3ce13b59ad4 100644 --- a/_includes/deploy/providers/script.md +++ b/_includes/deploy/providers/script.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Script is in **beta**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Script is **stable**. ## Known options Use the following options to further configure the deployment. @@ -28,3 +28,4 @@ Use the following options to further configure the deployment. | `cleanup` | Clean up build artifacts from the Git working directory before the deployment — type: boolean | | `run` | Commands to execute after the deployment finished successfully — type: string or array of strings | + diff --git a/_includes/deploy/providers/snap.md b/_includes/deploy/providers/snap.md index 61a93add6ed..658053d94e9 100644 --- a/_includes/deploy/providers/snap.md +++ b/_includes/deploy/providers/snap.md @@ -16,7 +16,7 @@ deploy: ## Status -Support for deployments to Snap is in **development**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Snap is **stable**. ## Known options Use the following options to further configure the deployment. @@ -35,4 +35,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `SNAP_`. For example, `token` can be given as `SNAP_TOKEN=`. -{% include deploy/secrets.md name="token" env_name="SNAP_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="SNAP_TOKEN" %} diff --git a/_includes/deploy/providers/surge.md b/_includes/deploy/providers/surge.md index c859d0d6b98..350f8da9f7d 100644 --- a/_includes/deploy/providers/surge.md +++ b/_includes/deploy/providers/surge.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to Surge is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Surge is **stable**. ## Known options Use the following options to further configure the deployment. @@ -37,4 +37,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `SURGE_`. For example, `token` can be given as `SURGE_TOKEN=`. -{% include deploy/secrets.md name="token" env_name="SURGE_TOKEN" %} \ No newline at end of file + +{% include deploy/secrets.md name="token" env_name="SURGE_TOKEN" %} diff --git a/_includes/deploy/providers/testfairy.md b/_includes/deploy/providers/testfairy.md index 9a39235e946..8cbbc0c73cf 100644 --- a/_includes/deploy/providers/testfairy.md +++ b/_includes/deploy/providers/testfairy.md @@ -17,7 +17,7 @@ deploy: ## Status -Support for deployments to TestFairy is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to TestFairy is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. @@ -27,7 +27,7 @@ Use the following options to further configure the deployment. | `symbols_file` | Path to the symbols file — type: string | | `testers_groups` | Tester groups to be notified about this build — type: string, e.g.: e.g. group1,group1 | | `notify` | Send an email with a changelog to your users — type: boolean | -| `auto_update` | Automaticall upgrade all the previous installations of this app this version — type: boolean | +| `auto_update` | Automatically upgrade all the previous installations of this app this version — type: boolean | | `advanced_options` | Comma_separated list of advanced options — type: string, e.g.: option1,option2 | ### Shared options @@ -40,4 +40,5 @@ Use the following options to further configure the deployment. All options can be given as environment variables if prefixed with `TESTFAIRY_`. For example, `api_key` can be given as `TESTFAIRY_API_KEY=`. -{% include deploy/secrets.md name="api_key" env_name="TESTFAIRY_API_KEY" %} \ No newline at end of file + +{% include deploy/secrets.md name="api_key" env_name="TESTFAIRY_API_KEY" %} diff --git a/_includes/deploy/providers/transifex.md b/_includes/deploy/providers/transifex.md index 1ce02e2582a..4f34a546d90 100644 --- a/_includes/deploy/providers/transifex.md +++ b/_includes/deploy/providers/transifex.md @@ -25,7 +25,7 @@ deploy: ## Status -Support for deployments to Transifex is in **alpha**. Please see [Maturity Levels](/user/deployment-v2#maturity-levels) for details. +Support for deployments to Transifex is in **alpha**. Please see [Maturity Levels](/user/deployment-v2/#maturity-levels) for details. ## Known options Use the following options to further configure the deployment. Either `api_token` or `username` and `password` are required. @@ -46,4 +46,5 @@ Use the following options to further configure the deployment. Either `api_token All options can be given as environment variables if prefixed with `TRANSIFEX_`. For example, `api_token` can be given as `TRANSIFEX_API_TOKEN=`. + {% include deploy/secrets.md name="api_token" env_name="TRANSIFEX_API_TOKEN" %} \ No newline at end of file diff --git a/_includes/deploy/tags.md b/_includes/deploy/tags.md index 8dd6a2f3734..ace8d7a0049 100644 --- a/_includes/deploy/tags.md +++ b/_includes/deploy/tags.md @@ -3,7 +3,7 @@ Most likely, you would only want to deploy when a new version of your package is cut. -To do this, you can include a `tags` condition like do: +To do this, you can include a `tags` condition like so: ```yaml deploy: diff --git a/_includes/enterprise_sidebar.html b/_includes/enterprise_sidebar.html index 047a6fa9e8d..7ccfae8142d 100644 --- a/_includes/enterprise_sidebar.html +++ b/_includes/enterprise_sidebar.html @@ -1,47 +1,23 @@ diff --git a/_includes/footer.html b/_includes/footer.html index 43e510dc581..84b8561d217 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -1,10 +1,7 @@