# Travis CI

Published articles for Travis CI.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Shared Secrets in CI Systems Create Security Risks

DevFeed: [Shared Secrets in CI Systems Create Security Risks](<https://devfeed.tech/articles/getting-rid-of-shared-secrets-the-major-design-flaw-of-all-ci-systems-29846.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/shared-secrets-oidc-cicd/>)

Author: info@goteleport.com (Noah Stride)

Published: 2023-03-08T00:00:00Z

Content type: article

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [ci](<https://devfeed.tech/topics/ci.md>), [Security](<https://devfeed.tech/topics/security.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>), [CircleCI](<https://devfeed.tech/topics/circleci.md>), [ssh](<https://devfeed.tech/topics/ssh.md>)

Tags: [api-keys](<https://devfeed.tech/tags/api-keys.md>), [ci](<https://devfeed.tech/tags/ci.md>), [circleci](<https://devfeed.tech/tags/circleci.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [security](<https://devfeed.tech/tags/security.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

The article explains how shared secrets in CI systems and CD pipelines can enable attackers to access production systems and steal customer data. It discusses replacing long-term shared secrets with short-lived, scoped certificates.

### Source excerpt

Shared secrets in CI systems like GitHub Actions and CircleCI pose serious risks. Hackers can exploit secrets to access production systems and steal information.

## A new version of logzero is released (v1.6) 🎉

DevFeed: [A new version of logzero is released (v1.6) 🎉](<https://devfeed.tech/articles/a-new-version-of-logzero-is-released-v1-6-31853.md>)

Original publisher: [Read original article](<https://www.metachris.dev/2020/10/a-new-version-of-logzero-is-released-v1.6/>)

Author: Chris Hager

Published: 2020-10-30T00:00:00Z

Content type: release

Language: en

Sources: [Chris Hager](<https://devfeed.tech/sources/chris-hager.md>)

Topics: [Logging](<https://devfeed.tech/topics/logging.md>), [Library](<https://devfeed.tech/topics/library.md>), [Python](<https://devfeed.tech/topics/python.md>), [JSON](<https://devfeed.tech/topics/json.md>), [PyPI](<https://devfeed.tech/topics/pypi.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>)

Tags: [github-actions](<https://devfeed.tech/tags/github-actions.md>), [json](<https://devfeed.tech/tags/json.md>), [library](<https://devfeed.tech/tags/library.md>), [logging](<https://devfeed.tech/tags/logging.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [pypi](<https://devfeed.tech/tags/pypi.md>), [python](<https://devfeed.tech/tags/python.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [v1](<https://devfeed.tech/tags/v1.md>), [version](<https://devfeed.tech/tags/version.md>)

### AI overview

This release article announces logzero v1.6, a Python logging library update. It describes JSON formatting, customizable colors, root logger creation, separate file and stream log levels, Markdown-based project documentation, and migration from Travis CI to GitHub Actions for testing and PyPI deployment.

### Source excerpt

logzero is a simple and effective logging library for Python, with colored stream output, logfile, syslog, JSON formatting and much more: https://github.com/metachris/logzero After a really busy period with my second 🐣, I start to find a little bit of time here and there for fun projects. Recently I've enjoyed a few evenings maintaining logzero, culminating in a small release today: logzero v1.6 🎉 logzero v1.6 has several improvements: JSON formatting (with integrated python-json-logger) Easily change colors to custom color codes Allow creating of root loggers Allow file logging with lower loglevel than stream Project readme and history was converted to markdown and displays nicely on PyPI Deprecation of Travis CI Running tests with GitHub Actions, with Python versions up to 3.

## Plugin Portal Security CVE-2020-7599

DevFeed: [Plugin Portal Security CVE-2020-7599](<https://devfeed.tech/articles/plugin-portal-security-cve-2020-7599-24678.md>)

Original publisher: [Read original article](<https://blog.gradle.org/plugin-portal-update>)

Author: Sterling Greene

Published: 2020-03-27T04:00:00Z

Content type: article

Language: en

Sources: [The Gradle Blog](<https://devfeed.tech/sources/the-gradle-blog.md>)

Topics: [Gradle](<https://devfeed.tech/topics/gradle.md>), [Security](<https://devfeed.tech/topics/security.md>), [Vulnerabilities](<https://devfeed.tech/topics/vulnerabilities.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Publishing](<https://devfeed.tech/topics/publishing.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [cve](<https://devfeed.tech/tags/cve.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [logging](<https://devfeed.tech/tags/logging.md>), [maintainers](<https://devfeed.tech/tags/maintainers.md>), [netflix](<https://devfeed.tech/tags/netflix.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [security](<https://devfeed.tech/tags/security.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [vulnerability](<https://devfeed.tech/tags/vulnerability.md>)

### AI overview

This security update describes CVE-2020-7599 in the Gradle Plugin Publish Plugin. Elevated logging could expose a reusable pre-signed AWS S3 upload URL in build logs, allowing someone with access to the logs to overwrite plugin artifacts on the Plugin Portal. The article recommends upgrading com.gradle.plugin-publish plugin to version 0.11.0, avoiding elevated log levels for sensitive publishing builds, keeping such builds private, and following CI provider practices for protecting build logs.

### Source excerpt

Important update when publishing plugins to the Plugin Portal A security vulnerability was reported to us on March 4th, 2020. This problem could allow an authorized person to overwrite plugin artifacts on the Plugin Portal if they had access to the build logs that published the plugin. After a thorough investigation, we found no artifacts were overwritten for a malicious purpose. In response, we've published a new version of the com.gradle.plugin-publish plugin that contains an update to mitigate this security vulnerability. Please upgrade com.gradle.plugin-publish plugin to version 0.11.0. Old versions of the com.gradle.plugin-publish plugin will no longer work. If you do not publish plugins to the Plugin Portal, you do not need to do anything. We also recommend that builds handling sensitive information (like publishing builds) do not run with elevated log levels (like --debug with Gradle) and are kept private to minimize the damage that can be done if sensitive information is exposed. You should also follow the best practices of your CI provider to avoid leaking sensitive information into build logs (as an example, Travis CI). Like other software, build maintainers and plugin authors need to keep in mind the types of information that may be logged. This post is a summary of what we found and how we verified that artifacts served by the Plugin Portal were not changed. Continue reading if you're interested in what we uncovered. Discovery of the Vulnerability On March 4th, 2020, we were notified about a security vulnerability with uploads to the Plugin Portal. The vulnerability could allow anyone with access to the log file from the build that published the plugins to overwrite the plugin's artifacts when info level logging is enabled. This is an information disclosure vulnerability (CWE-532: Insertion of Sensitive Information into Log File) for the Plugin Publish Plugin and is tracked by CVE-2020-7599. Thanks to Danny Thomas from Netflix for reporting this issue to

## Validating OAS 3 specification in your CI build

DevFeed: [Validating OAS 3 specification in your CI build](<https://devfeed.tech/articles/validating-oas-3-specification-in-your-ci-build-21503.md>)

Original publisher: [Read original article](<https://mirocupak.com/validating-oas-3-specification-in-your-ci-build/>)

Published: 2019-02-15T17:29:41Z

Content type: tutorial

Language: en

Sources: [Miro Cupak](<https://devfeed.tech/sources/miro-cupak.md>)

Topics: [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [Continuous integration](<https://devfeed.tech/topics/continuous-integration.md>), [YAML](<https://devfeed.tech/topics/yaml.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Swagger](<https://devfeed.tech/topics/swagger.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [github](<https://devfeed.tech/tags/github.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [specifications](<https://devfeed.tech/tags/specifications.md>), [swagger](<https://devfeed.tech/tags/swagger.md>), [swagger-validator-badge](<https://devfeed.tech/tags/swagger-validator-badge.md>), [testing](<https://devfeed.tech/tags/testing.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [yaml](<https://devfeed.tech/tags/yaml.md>)

### AI overview

This tutorial explains how to validate an OpenAPI 3 specification on every pull request as part of continuous integration. It uses the Swagger Validator Badge tool in Travis CI, building version 2.0.0 locally because hosted support for OpenAPI 3 was incomplete at the time of writing.

### Source excerpt

As part of my work on standards under GA4GH, I frequently deal with API specifications, most often written in OpenAPI 3 (OAS 3). The setup is always similar - there's a public GitHub repository containing an OAS 3 YAML file and a few common auxiliary files (.gitignore, LICENSE, CONTRIBUTING.md, and README.md). Reference implementations of...

## Obtaining a URL to a file in a GitHub repository in a Travis CI build

DevFeed: [Obtaining a URL to a file in a GitHub repository in a Travis CI build](<https://devfeed.tech/articles/obtaining-a-url-to-a-file-in-a-github-repository-in-a-travis-ci-build-21502.md>)

Original publisher: [Read original article](<https://mirocupak.com/obtaining-a-url-to-a-file-in-a-github-repository-in-a-travis-ci-build/>)

Published: 2019-01-24T22:51:37Z

Content type: tutorial

Language: en

Sources: [Miro Cupak](<https://devfeed.tech/sources/miro-cupak.md>)

Topics: [ci](<https://devfeed.tech/topics/ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>), [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [Swagger](<https://devfeed.tech/topics/swagger.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [devops](<https://devfeed.tech/tags/devops.md>), [github](<https://devfeed.tech/tags/github.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openapi-specification](<https://devfeed.tech/tags/openapi-specification.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [swagger](<https://devfeed.tech/tags/swagger.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

A tutorial explaining how to construct a URL to a repository file in a Travis CI build while accounting for push builds, pull requests from forks, branches, and tags.

### Source excerpt

I'm a fan of Travis CI and use it for continuous integration across pretty much all my open-source projects on GitHub. From time to time, I need to obtain a URL to a file in the repository in my build, e.g. to point a particular tool to it, in a way that respects branches as well as pull requests...

## Dockerized e2e tests

DevFeed: [Dockerized e2e tests](<https://devfeed.tech/articles/dockerized-e2e-tests-27294.md>)

Original publisher: [Read original article](<https://blog.pchudzik.com/201802/dockerized-e2e/>)

Published: 2018-02-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Paweł Chudzik](<https://devfeed.tech/sources/pawe-chudzik.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Selenium](<https://devfeed.tech/topics/selenium.md>), [Browser Automation](<https://devfeed.tech/topics/browser-automation.md>), [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [webDriver](<https://devfeed.tech/topics/webdriver.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>), [Firefox](<https://devfeed.tech/topics/firefox.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [ci](<https://devfeed.tech/tags/ci.md>), [containers](<https://devfeed.tech/tags/containers.md>), [docker](<https://devfeed.tech/tags/docker.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [selenium](<https://devfeed.tech/tags/selenium.md>), [testing](<https://devfeed.tech/tags/testing.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [webdriver](<https://devfeed.tech/tags/webdriver.md>)

### AI overview

This tutorial explains how to run Selenium end-to-end tests in Docker and integrate them with CI tools such as Travis CI, GitLab CI, or Jenkins. It describes using Selenium Hub and Chrome and Firefox node containers, configuring WebdriverIO, capturing screenshots for failed tests, and organizing tests with a Page Object.

### Source excerpt

In my free time, I'm trying to learn something new and best of way learning is by doing. To avoid spinning my wheels in vain I'm helping to develop some product. In the previous post, I've described what we've decided to use for the UI and pointed out that I'm going to write integration tests. Here is how I integrated selenium e2e tests with gitlab-ci/travis-ci/whatever by running them in docker. Read more

## Travis CI Integration

DevFeed: [Travis CI Integration](<https://devfeed.tech/articles/travis-ci-integration-19618.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/travis-ci-integration/>)

Author: Steve Hannah

Published: 2018-01-08T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [ci](<https://devfeed.tech/topics/ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Emulator](<https://devfeed.tech/topics/emulator.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [ci](<https://devfeed.tech/tags/ci.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [github](<https://devfeed.tech/tags/github.md>), [integration](<https://devfeed.tech/tags/integration.md>), [ios](<https://devfeed.tech/tags/ios.md>), [simulator](<https://devfeed.tech/tags/simulator.md>), [test](<https://devfeed.tech/tags/test.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

Codename One added Travis CI support for automatically running unit tests on configured platforms whenever project changes are committed to GitHub. Projects can enable the integration in Codename One settings, push the generated Travis configuration, and activate the project on Travis.

### Source excerpt

We've just added support for Travis CI in your Codename One projects. Travis can be set up to automatically test your project (i.e. run unit tests) on a variety of different platforms every time you commit changes to github. There is a wiki page with full documentation of this feature, but the general idea and workflow are: Enable Travis CI for your project via Codename One settings Push your project (including .travis.yml and .travis directory, which are created for you when you enable Travis) to Github.

## Updates and Holidays

DevFeed: [Updates and Holidays](<https://devfeed.tech/articles/updates-and-holidays-19650.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/updates-holidays/>)

Author: Shai Almog

Published: 2017-11-29T00:00:00Z

Content type: article

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Test-driven development](<https://devfeed.tech/topics/tdd.md>), [ci](<https://devfeed.tech/topics/ci.md>)

Tags: [announcement](<https://devfeed.tech/tags/announcement.md>), [bug-fixes](<https://devfeed.tech/tags/bug-fixes.md>), [features](<https://devfeed.tech/tags/features.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [tdd](<https://devfeed.tech/tags/tdd.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [ui](<https://devfeed.tech/tags/ui.md>), [updates](<https://devfeed.tech/tags/updates.md>)

### AI overview

A Codename One update announces brief push-server downtime, a planned plugin 3.8.1 release, ongoing CI and TDD work, new side-menu component support, unit-test migration into the core repository, and UI improvements under consideration.

### Source excerpt

Before I go into the details a quick announcement, we need to update some of our push servers. We will have a short amount of downtime on Sunday December 3rd around 8AM GMT. This update should be very fast and barely noticeable but it might impact some push message deliverability for a short period. Some of us will be on vacation around December but I'll personally still work during the month. However, I won't post regular blog updates until mid January as the traffic during the Christmas/new year season is relatively low and I'm afraid some important updates might slip between the cracks. We do plan to push out a plugin update version 3.8.1 during this time as we have some new features and bug fixes pending.

## What's new in version 2.5.0 of our client SDKs.

DevFeed: [What's new in version 2.5.0 of our client SDKs.](<https://devfeed.tech/articles/what-s-new-in-version-2-5-0-of-our-client-sdks-15960.md>)

Original publisher: [Read original article](<https://developer.squareup.com/blog/whats-new-in-version-2-5-0-of-our-client-sdks>)

Author: Tristan Sokol

Published: 2017-11-15T22:11:37Z

Content type: release

Language: en

Sources: [Square Corner Blog RSS Feed](<https://devfeed.tech/sources/square-corner-blog-rss-feed.md>)

Topics: [SDKs](<https://devfeed.tech/topics/sdks.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>), [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [apis](<https://devfeed.tech/tags/apis.md>), [ci](<https://devfeed.tech/tags/ci.md>), [developers](<https://devfeed.tech/tags/developers.md>), [new-features](<https://devfeed.tech/tags/new-features.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [openapi-specification](<https://devfeed.tech/tags/openapi-specification.md>), [release](<https://devfeed.tech/tags/release.md>), [sdks](<https://devfeed.tech/tags/sdks.md>), [transactions](<https://devfeed.tech/tags/transactions.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

Square announces version 2.5.0 of its client SDKs, adding multi-party transactions, improving SDK generation instructions, removing the Travis CI SDK build pipeline, and fixing minor spelling issues.

### Source excerpt

The latest version of our SDKs includes our big release of multi-party transactions.

## Announcing new versions of our client SDKs

DevFeed: [Announcing new versions of our client SDKs](<https://devfeed.tech/articles/announcing-new-versions-of-our-client-sdks-15512.md>)

Original publisher: [Read original article](<https://developer.squareup.com/blog/announcing-our-new-versions-of-our-client-sdks>)

Author: Tristan Sokol

Published: 2017-04-28T22:18:28Z

Content type: release

Language: en

Sources: [Square Corner Blog RSS Feed](<https://devfeed.tech/sources/square-corner-blog-rss-feed.md>)

Topics: [SDK](<https://devfeed.tech/topics/sdk.md>), [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [Code generation](<https://devfeed.tech/topics/code-generation.md>), [Continuous integration](<https://devfeed.tech/topics/continuous-integration.md>), [Slack](<https://devfeed.tech/topics/slack.md>), [ASGI](<https://devfeed.tech/topics/asgi.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [c-sharp](<https://devfeed.tech/tags/c-sharp.md>), [ci](<https://devfeed.tech/tags/ci.md>), [developers](<https://devfeed.tech/tags/developers.md>), [github](<https://devfeed.tech/tags/github.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [java](<https://devfeed.tech/tags/java.md>), [maven](<https://devfeed.tech/tags/maven.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [php](<https://devfeed.tech/tags/php.md>), [python](<https://devfeed.tech/tags/python.md>), [request](<https://devfeed.tech/tags/request.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [sdks](<https://devfeed.tech/tags/sdks.md>), [slack](<https://devfeed.tech/tags/slack.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

Square announces updated first-party client SDKs, a new Slack community for developer feedback, and its first Java SDK. The SDKs are generated from the OpenAPI Specification and support PHP, Python, Ruby, C#, and Java, with expanded endpoint coverage and revised authorization and API naming.

### Source excerpt

We are releasing a big update to our first-party SDKs, as well as a new Slack community for developers!

## Continuous Deployment: Hugo + Travis CI -\> GitHub Pages

DevFeed: [Continuous Deployment: Hugo + Travis CI -\> GitHub Pages](<https://devfeed.tech/articles/continuous-deployment-hugo-travis-ci-github-pages-31845.md>)

Original publisher: [Read original article](<https://www.metachris.dev/2017/04/continuous-deployment-hugo--travis-ci-github-pages/>)

Author: Chris Hager

Published: 2017-04-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Chris Hager](<https://devfeed.tech/sources/chris-hager.md>)

Topics: [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Continuous Deployment (CD)](<https://devfeed.tech/topics/continuous-deployment.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [Hugo](<https://devfeed.tech/topics/hugo.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Git](<https://devfeed.tech/topics/git.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [container](<https://devfeed.tech/topics/container.md>)

Tags: [builds](<https://devfeed.tech/tags/builds.md>), [ci](<https://devfeed.tech/tags/ci.md>), [continuous-deployment](<https://devfeed.tech/tags/continuous-deployment.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [git](<https://devfeed.tech/tags/git.md>), [github](<https://devfeed.tech/tags/github.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [go](<https://devfeed.tech/tags/go.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

A tutorial on automating Hugo static website builds and deployment to GitHub Pages with Travis CI. Builds run when changes are pushed to Git, and deployment occurs after a successful build on the master branch.

### Source excerpt

This post shows how to automate building and deployment of Hugo static websites to GitHub Pages using Travis CI. Builds are automatically triggered when pushing to the Git repository, and deployment when a build on the master branch succeeds. Hugo is a static website generator written in Go, and only requires a single binary. The easiest way to run Hugo in the Travis CI container is by including the specific hugo binary with which to build the site as part of the repository (eg.

## Building a 64bit Docker OS for the Raspberry Pi 3

DevFeed: [Building a 64bit Docker OS for the Raspberry Pi 3](<https://devfeed.tech/articles/building-a-64bit-docker-os-for-the-raspberry-pi-3-29463.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/building-a-64bit-docker-os-for-rpi3/>)

Published: 2017-03-02T10:28:42Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Operating system](<https://devfeed.tech/topics/operating-system.md>), [Debian](<https://devfeed.tech/topics/debian.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [boot](<https://devfeed.tech/topics/boot.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [bootloader](<https://devfeed.tech/tags/bootloader.md>), [bugs](<https://devfeed.tech/tags/bugs.md>), [ci](<https://devfeed.tech/tags/ci.md>), [containers](<https://devfeed.tech/tags/containers.md>), [debian](<https://devfeed.tech/tags/debian.md>), [docker](<https://devfeed.tech/tags/docker.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [opensource](<https://devfeed.tech/tags/opensource.md>), [os](<https://devfeed.tech/tags/os.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [workshop](<https://devfeed.tech/tags/workshop.md>)

### AI overview

A workshop introduces the step-by-step construction of HypriotOS, a 64-bit Debian-based operating system for Raspberry Pi 3 focused on running Docker containers. It covers the bootloader, kernel, root filesystem, and SD card image, using Docker for builds and Travis CI for cloud builds.

### Source excerpt

I'm happy to announce the start of a "short" workshop were I'm going through all the steps to build a complete 64bit operating system for the Raspberry Pi 3. This 64bit HypriotOS is mainly focused on running Docker containers easily on this popular DIY and IoT device. You'll see that I'm using Docker heavily for each and every build step, because it really helps us a lot to run a local build with Docker-for-Mac or later on the cloud build servers at Travis CI. This workshop is sponsored by bee42 solutions Follow @bee42solutions Background and Contents As you may already know, a complete Linux operating system consists of several important building blocks and I'd like to show you how to build all of these step by step. For this purpose I'm not going to reinvent the wheel and so I'll reuse all of the existing parts which are already published by the Raspberry Pi Organisation, by the Debian Linux project and will add some more glue code. At the end you should have learned how to build all the necessary parts and how to automatically create a finished SD card image which could be flashed on an empty SD card. Then boot your Raspberry Pi 3 with and in less than a minute you have a fully running Docker Engine on a Debian-based 64bit Linux OS. Here is a short overview of the contents of the workshop: Part 1: Bootloader Part 2: Kernel Part 3: Root filesystem Part 4: SD Card Image So, that's enough for explaining the background of this workshop. For more informations please follow along the details I'll publish on the coming tweets at Twitter and in the GitHub repos until all the parts of this workshop are finished and available as OpenSource. Please be aware that this OS is in a development phase and far from being perfect. So you are encouraged to help me with reporting issues and filing pull-requests to add features and fix bugs. Further Links I'm going to publish all the details and steps to build the new operating system in a public GitHub repo. All other details and nec

## Best Practices and Common Mistakes with Travis CI

DevFeed: [Best Practices and Common Mistakes with Travis CI](<https://devfeed.tech/articles/best-practices-and-common-mistakes-with-travis-ci-28622.md>)

Original publisher: [Read original article](<https://eng.localytics.com/best-practices-and-common-mistakes-with-travis-ci/>)

Author: Kevin Deisz

Published: 2017-01-10T13:46:39Z

Content type: tutorial

Language: en

Sources: [Localytics](<https://devfeed.tech/sources/localytics.md>)

Topics: [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [Continuous integration](<https://devfeed.tech/topics/continuous-integration.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [build performance](<https://devfeed.tech/topics/build-performance.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [github](<https://devfeed.tech/tags/github.md>), [parallelism](<https://devfeed.tech/tags/parallelism.md>), [speed](<https://devfeed.tech/tags/speed.md>), [testing](<https://devfeed.tech/tags/testing.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

This article presents five internal best practices for using Travis CI, focusing on continuous integration, efficient testing, and reducing build time. It explains how Travis CI integrates with GitHub and supports configurable build environments, build matrices, and test parallelism.

### Source excerpt

What is Travis At Localytics, we've worked hard to ensure that all of our services are built and deployed using our own internal best practices. One of those core best practices is that the service in question is using continuous integration (CI). CI greatly reduces the amount of

## Setting up Travis, Jekyll and GitHub pages

DevFeed: [Setting up Travis, Jekyll and GitHub pages](<https://devfeed.tech/articles/setting-up-travis-jekyll-and-github-pages-37366.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/travis-jekyll-and-github-pages/>)

Author: Stanko

Published: 2016-10-24T00:00:00Z

Content type: tutorial

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [Jekyll](<https://devfeed.tech/topics/jekyll.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [github](<https://devfeed.tech/tags/github.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [github-personal-access-token](<https://devfeed.tech/tags/github-personal-access-token.md>), [jekyll](<https://devfeed.tech/tags/jekyll.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [security](<https://devfeed.tech/tags/security.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

This tutorial explains how to use Travis CI to build a Jekyll site and publish the generated files through GitHub Pages. It describes branch setup, webhook activation, a GitHub Personal Access Token, Ruby gem configuration, and a Rake task. The author warns that the setup may be outdated and no longer uses it.

### Source excerpt

Please note that I'm not using Jekyll anymore, so this post might be outdated. Update, November 2017 # I don't use this setup anymore, it might be outdated, proceed with caution. Original post # As I already mentioned, GitHub pages do not work with the Jekyll plugins. It is a security measure. So I researched it a bit, and colleague of mine proposed a simple solution - Travis CI. There is a great repo with instructions how to set everything up - jekyll-travis. But few steps are kinda confusing, and it took me 10 failed builds to make it work. So I'll try to help you with those. I copied the steps from the original repo and updated steps where I got stuck. Be sure to check the original readme as well. Flow # When you push to your GitHub repo, it triggers Travis Travis starts up a virtual machine and installs all required software (mostly Ruby gems). We use a custom rake task to tell Travis how to build our Jekyll site and push the updated content back to Github Travis clones a source branch (usually master or source, in my case source) Travis runs jekyll build on the source branch Travis does a git push to the branch holding static site files (usually gh-pages or master, in my case master) Github Pages starts serving the updated site Steps to make it work # Move your Jekyll source files to the source branch (name it as you like). We'll use master or gh-pages branch to host generated HTML website. Make sure you have enabled your source repo in the Travis CI admin dashboard so that the webhook is triggered Create a GitHub Personal Access Token from you profile page. If you haven't already, create a Gemfile, and add rake gem to it. source "http://production.cf.rubygems.org/" gem "rake", "~> 10.1.1" gem "jekyll-paginate" gem "jekyll-archives" We have seen intermittent timeouts fetching gems from Rubygems.org. install: bundle install lets Travis CI automatically retry, and we are using source "http://production.cf.rubygems.org/" in Gemfile to point to a different reposito

## Test gem with multiple dependencies on Travis CI

DevFeed: [Test gem with multiple dependencies on Travis CI](<https://devfeed.tech/articles/test-gem-with-multiple-dependencies-on-travis-ci-20081.md>)

Original publisher: [Read original article](<http://jollygoodcode.com/blog/2016/07/03/test-gem-with-multiple-dependencies-on-travis-ci.html>)

Published: 2016-07-03T05:27:56Z

Content type: tutorial

Language: en

Sources: [Jolly Good Code](<https://devfeed.tech/sources/jolly-good-code.md>)

Topics: [ci](<https://devfeed.tech/topics/ci.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [test](<https://devfeed.tech/topics/test.md>), [Tool](<https://devfeed.tech/topics/tool.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [learn](<https://devfeed.tech/tags/learn.md>), [test](<https://devfeed.tech/tags/test.md>), [tool](<https://devfeed.tech/tags/tool.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

A tutorial on testing a Gem with multiple dependencies on Travis CI using thoughtbot's appraisal tool.

### Source excerpt

Learn how to test your Gem with multiple dependencies on Travis CI with thoughtbot's appraisal tool.

## Set up Travis CI and code coverage for open-source Android projects

DevFeed: [Set up Travis CI and code coverage for open-source Android projects](<https://devfeed.tech/articles/level-up-github-builds-with-ci-and-code-coverage-28640.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2015/11/13/traviscoveralls/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2015-11-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [ci](<https://devfeed.tech/topics/ci.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [Android](<https://devfeed.tech/topics/android.md>)

Tags: [also](<https://devfeed.tech/tags/also.md>), [android](<https://devfeed.tech/tags/android.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [ci](<https://devfeed.tech/tags/ci.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [coverage](<https://devfeed.tech/tags/coverage.md>), [github](<https://devfeed.tech/tags/github.md>), [tools](<https://devfeed.tech/tags/tools.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

This tutorial explains how to configure Travis CI to build open-source Android projects, run unit tests, generate code coverage reports, and integrate with GitHub pull requests.

### Source excerpt

Wouldn't you love to have your open source projects built automatically by a continuous integration server? And to have a detailed code coverage report for all your unit tests?

## Personas, data science, k-means

DevFeed: [Personas, data science, k-means](<https://devfeed.tech/articles/personas-data-science-k-means-41169.md>)

Original publisher: [Read original article](<https://www.craigkerstiens.com/2014/05/08/Personas-data-science-k-means/>)

Author: Map

Published: 2014-05-08T20:55:56Z

Content type: opinion

Language: en

Sources: [Craig Kerstiens](<https://devfeed.tech/sources/craig-kerstiens.md>)

Topics: [Data Science](<https://devfeed.tech/topics/data-science.md>), [math](<https://devfeed.tech/topics/math.md>), [Statistics](<https://devfeed.tech/topics/statistics.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [data](<https://devfeed.tech/topics/data.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [data](<https://devfeed.tech/tags/data.md>), [data-science](<https://devfeed.tech/tags/data-science.md>), [math](<https://devfeed.tech/tags/math.md>), [statistics](<https://devfeed.tech/tags/statistics.md>), [technology](<https://devfeed.tech/tags/technology.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>)

### AI overview

The article discusses personas, data science, and k-means, arguing that personas can be understood as groupings of people or other entities with likely outcomes based on inputs. It defines data science as applying math or statistics and algorithms to learn actionable information about a business. The supplied text ends as the discussion of k-means begins.

### Source excerpt

If one of the industry lingo terms in title didn't make your skin crawl a little then I need to try harder. At the same time you've probably heard someone use one of them in a non-trolling way in the last month. All three of these can often actually mean the same or similar things, it's just people approach them differently from their world perspective. Personas don't have to be marketing only speak, and data science doesn't have to be only for stats people. My goal here is to simply set a context for the rest of the meat which talks about how you can simply look at your data and let it surface things you may not have known. Personas I most commonly hear this term from "business people". In fact not too long ago I recall interacting with someone that wanted to define personas for a company. They wanted to give them names, Joe and Mary. Joe is a father of 2, he works between 8 and 5, because he has to pick kids up from school, he's always worked at fortune 100 companies. Mary is single, she's a small business owner, she likes using tools instead of building things herself. If you think this is overly exaggerated on what you might expect that's fair. Lets take a company I'm fond of Travis CI, if someone were to do this for them it might look like: Enterprise QA developer Startup full stack engineer Open source contributor While this is all fine and good, a name and what they do doesn't help in the substantial way I'd like. Sure use personas if it helps you think about who you're building the product for, but don't expect customers to say yes I fit into only this bucket by trying to create classifications like this. Let's rephrase this to be super simple, groupings of people, no groupings of something that have a likely outcome based on some various inputs. Perhaps a better term for it is archtype Data science The application of math or statistics to learn something about your business. It doesn't have to be big data, or NoSQL, simply the application of an algorithm to

## Objective-C on Travis-CI

DevFeed: [Objective-C on Travis-CI](<https://devfeed.tech/articles/objective-c-on-travis-ci-25388.md>)

Original publisher: [Read original article](<https://smileykeith.com/2013/04/11/objective-c-on-travis-ci/>)

Author: Keith Smiley

Published: 2013-04-11T22:58:00Z

Content type: tutorial

Language: en

Sources: [Keith Smiley](<https://devfeed.tech/sources/keith-smiley.md>)

Topics: [Objective-C](<https://devfeed.tech/topics/objective-c.md>), [Continuous integration](<https://devfeed.tech/topics/continuous-integration.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Jenkins](<https://devfeed.tech/topics/jenkins.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [ci](<https://devfeed.tech/tags/ci.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [github](<https://devfeed.tech/tags/github.md>), [ios](<https://devfeed.tech/tags/ios.md>), [jenkins](<https://devfeed.tech/tags/jenkins.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [submodules](<https://devfeed.tech/tags/submodules.md>), [testing](<https://devfeed.tech/tags/testing.md>), [travis](<https://devfeed.tech/tags/travis.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

A practical guide to configuring Travis CI for Objective-C projects targeting OS X and iOS. It covers repository setup, the .travis.yml configuration file, Xcode shared schemes and test targets, dependency handling, and additional scripts for projects using CocoaPods or submodules.

### Source excerpt

Recently Travis added support for Objective-C and there for OS X and iOS projects for continuous integration testing. I gather that people have previously done this with self-hosted dedicated Jenkins machines but since Apple is so aggressive about dropping support for previous versions of the OS it seems like a pain to have to replace your build server every few years. Enter Travis, a great hosted continuous integration server that hosts a huge amount of open source projects. I figured with this new support I could host some of my smaller libraries just to set how well it worked. The initial setup process was a bit tedious but I eventually got it to work. Assumtions: You have a test framework already integrated with your project (I like Specta/Expecta) You have your project on Github in a public repository. Travis offers a pro account if you'd rather Steps Create a .travis.yml file in the root of your repository (leading dot is intentional). For many projects a file may just look like: language: objective-c By default Travis runs this script for Objective-C projects I was informed on Twitter that the current script that runs Objective-C projects is actually located here. It was originally created by Justin Spahr-Summers here. This script seems to run my projects without any issue, they just occasionally require more initial setup (we'll get to that). Enable your repository in Travis' settings. From your Travis profile page (after signing in with Github) you should see a list of your repositories, you may have to press 'Sync now', where you can switch on the repository you're planning on adding. Configure your project within Xcode. As I assumed above you already have a test target setup. You do have to do a few things in Xcode to make everything work correctly. Go to 'Manage Schemes' in Xcode. Check the 'Shared' box for the scheme that needs to be run. Click 'Edit...' in the bottom left and go to your build action. On the row of your Tests target check the box in the '