Skip to content

Releases: travis-ci/worker

2.6.1 - 2017-01-23

23 Jan 13:17
Compare
Choose a tag to compare

Fixed

  • processor: open log writer early, prevent panic

2.6.0 - 2017-01-17

17 Jan 19:26
Compare
Choose a tag to compare

Security

  • update to go v1.7.4

Added

  • cli: log processor pool total on shutdown
  • amqp_job: meter for job finish state (#184)
  • amqp_job: track queue time via queued_at field from payload
  • amqp_job_queue: log job id immediately after json decode
  • capture every requeue and send the error to sentry

Changed

  • image/api_selector: selection of candidates by multiple groups
  • amqp_canceller: change verbosity of canceller missing job id to debug
  • docker: SIGINT STOPSIGNAL for graceful shutdown

Fixed

  • processor: always mark job as done when Run finishes
  • processor: use errors.Cause when checking error values
  • backend/jupiterbrain: parse SSH key on backend init (#206)
  • backend/jupiterbrain: add sleep between creating and wait-for-ip
  • backend/docker: run bash with -l (login shell) in docker native mode
  • image/api_selector: check job-board response status code on image selection
  • image/api_selector: check tagsets for trailing commas before querying job-board
  • amqp_job_queue: handle context cancellation when delivering build job
  • ssh: request a 80x40 PTY

2.5.0 - 2016-10-03

04 Oct 02:04
Compare
Choose a tag to compare

Added

  • support for heartbeat URL checks a la legacy
    worker
  • max build log length is now configurable
  • alpine-based Docker image
  • added runtime-configurable script hooks.

Changed

  • check flags and env vars for start and stop hooks

Fixed

  • Handling "false" as a valid boolean false-y value
  • logging for start/stop hooks is clearer now
  • logging for jupiter-brain boot timeouts is more verbose
  • AMQP connections get cleaned up as part of graceful shutdowns

2.4.0 - 2016-09-08

08 Sep 20:15
Compare
Choose a tag to compare

Added

  • backend/cloudbrain
  • backend/docker: "native" script upload and execution option
  • backend/gce: Support for instances without public IPs
  • handle SIGWINCH by gracefully shutting down processor pool and pausing

Changed

  • (really) static binaries built on go 1.7.1, cross compiled natively
  • step/run-script: Add a new line with a link to the docs explaining
    travis_wait when there's a log timeout error.
  • switch to keepachangelog format
  • upgrade all dependencies
  • backend/jupiterbrain: improved error logging via pkg/errors

Removed

  • Using goxc for cross-compilation
  • amqp-job: logging channel struct

Fixed

  • Handling "false" as a valid boolean false-y value

2.3.1 (May 30, 2016)

30 May 12:05
Compare
Choose a tag to compare

IMPROVEMENTS:

  • backend/gce: Allow the per-job hard timeout sent from scheduler to be
    longer than the global GCE hard timeout.

BUG FIXES:

  • package/rpm: Fix the systemd service file so the Worker can start.

2.3.0 (April 12th, 2016)

12 Apr 14:16
Compare
Choose a tag to compare

FEATURES:

  • backend/gce: Add support for separate project ID for images via
    IMAGE_PROJECT_ID env var.

IMPROVEMENTS:

  • amqp-job: Add support for custom amqp TLS certificates via --amqp-tls-cert
    and --amqp-tls-cert-path options.

BUG FIXES:

  • backend/gce: Requeue jobs on preempted instances (instances preemptively
    shutdown by gce).

2.2.0 (February 1st, 2016)

01 Feb 11:56
Compare
Choose a tag to compare

IMPROVEMENTS:

  • backend/gce: switched out rate limiter with Redis-backed rate limiter
  • backend/gce: create a pseudo-terminal that's 80 wide by 40 high instead of 40 wide by 80 high
  • backend/gce: make using preemptible instances configurable
  • build: switch to Go 1.5.2 for Travis CI builds
  • cli: add config option (--amqp-insecure) to connect to AMQP without verifying TLS certificates

2.1.0 (December 15th, 2015)

15 Dec 19:50
Compare
Choose a tag to compare

FEATURES:

  • backend/gce: Add support for a "premium" VM type.

IMPROVEMENTS:

  • cli: Show current status and last job id via SIGUSR1.
  • backend/gce: Use multistep
    during instance creation and deletion.
  • backend/gce: Allow configuration of script upload and startup timeouts.
  • backend/gce: Various improvements to minimize API usage:
    • Exponential backoff while stopping instance.
    • Add option to skip API polling after initial instance delete call.
    • Add metrics to track API polling for instance readiness.
    • Cache the instance IP address as soon as it is available.
    • Add ticker-based rate limiting.
  • backend/gce: Generate SSH key pair internally.
  • amqp-job: Track metrics for (started - received) duration.
  • cli: Add more percentiles to Librato config.
  • config: DRY up the relationship between config struct & cli flags.

BUG FIXES:

  • backend/jupiterbrain: Ensure image name is present in instance line of
    worker summary.
  • backend/docker: Pass resource limitations in HostConfig.
  • backend/docker: Prioritize language tags over default image.

2.0.0 (December 9th, 2015)

09 Dec 21:53
Compare
Choose a tag to compare

FEATURES:

  • step/open-log-writer: Display revision URL and startup time in worker info
    header.

IMPROVEMENTS:

  • Use goxc for cross-compilation, constrained to
    linux amd64 and darwin amd64.
  • backend/gce: Tweaks to minimize API calls, including:
    • Add a sleep interval for before first zone operation check.
    • Break out of instance readiness when RUNNING or DONE, depending
      on script upload SSH connectivity for true instance readiness.
    • Increase default script upload retries to 120.
    • Decrease default script upload sleep interval to 1s.
  • backend/gce: Remove legacy image selection method and configuration.

BUG FIXES:

  • step/run-script: Mark jobs as errored when log limit is exceeded,
    preventing infinite requeue.

1.4.0 (December 3rd, 2015)

03 Dec 15:32
Compare
Choose a tag to compare

FEATURES:

  • backend/docker: Allow disabling the CPU and RAM allocations by setting the
    config options to 0 (this was possible in previous versions, but was not
    documented or supported until now)

IMPROVEMENTS:

  • backend/gce: Send job ID and repository slug to image selector to help in
    log correlation
  • sentry: Only send fatal and panic levels to Sentry, with an option for
    sending errors as well (--sentry-hook-errors)
  • image/api_selector: Send os:osx instead of the language when querying for
    an image matching an osx_image flag

BUG FIXES:

  • amqp_job: Send correct received_at and started_at timestamps to hub in
    the case of the job finishing before the received or started event is sent