Skip to content
This repository has been archived by the owner on Aug 19, 2019. It is now read-only.

Releases: Stackdriver/metadata-agent

v0.0.21

23 Jul 23:07
f0b5376
Compare
Choose a tag to compare
v0.0.21 Pre-release
Pre-release

= Features =

  • Add /healthz endpoint that returns 500 when some watch stream is stale. (#165)
    • Set Content-Length when writing responses to close client connections. (#168)
    • Send a header to signal that connections should be closed. (#170)

= Bug fixes =

  • Fix crashloop when the agent recovers after a healthcheck failure. (#173)
    • Allow configuring the host address binding for the local resource API. (#171)

= Unit tests =

= Miscellaneous =

  • Bump version to 0.0.21-1. (#169)
  • Update metadata map only if the metadata is not empty. (#166)

v0.0.20

09 Jul 15:44
a926bc6
Compare
Choose a tag to compare
v0.0.20 Pre-release
Pre-release

= Features =

  • Better support for 64-bit integers in JSON (precision, serialization). (#133)
  • Add entrypoint.sh to abstract around metadatad binary. (#40)
    • The entrypoint script uses bash expressions, so should be run with /bin/bash. (#161)
    • Copy entrypoint.sh to the docker working directory. (#163)
  • Shut down gracefully on SIGTERM. (#136)

= Bug fixes =

  • Catch and log NonRetriableError instead of letting it propagate. (#145)
  • Don't update owners cache until the value is available (fixes segfault). (#160)
  • Add missing ca-certificates dependency in Xenial. (#140)
  • Fix the use of defaults in config parsing. (#138)
  • MacOS build fix for openssl libraries. (#137)
  • Bump cpp-netlib to the latest (ed6ff63a24df3fe9d7f9eda21dc2b0f6295ab5c7) to fix a build issue. (#150)
  • In configuration.cc, change LOG(DEBUG) to std::cout. (#144)

= Unit tests =

  • Add unit tests for credentials files. (#125)
  • Api server test for dispatch operator; fix parallel builds. (#128)
  • Add test for GetPodAndContainerMetadata (#130)
  • Add unit tests for environment with fake HTTP server. (#139)
  • Add more tests for environment.cc, for reading values from both config or metadata server. (#143)

= Miscellaneous =

  • Bump version to 0.0.20-2. (#162)
  • Bump version to 0.0.20-1. (#157)
  • ValidateConfiguration cleanup. (#134, #135)

v0.0.19

09 Apr 16:25
62524e7
Compare
Choose a tag to compare
v0.0.19 Pre-release
Pre-release

= Features =

  • Add support for providing command line options. (#108)
  • Disable Docker polling and Kubernetes watch by default. (#113)
    • Fix default value tests after #113. (#117)
  • Add streaming JSON parsing. (#106)
    • Use upstream chunked encoding processing with the streaming JSON parser. (#110)
    • Streaming JSON parsing cleanup. (#115)
  • Add support for collecting services. (#112)
    • Fix merge conflict in kubernetes_unittest. (#126)

= Bug fixes =

  • Bump the GCE metadata server timeout to 2s. (#114)
  • Removed spurious line (#121)
  • Split the metadata API request when it hits a limit by count or byte size (#129)
  • Add ca-certificates as a runtime dependency to resolve ssl issues. (#131)
  • Remove a log message that was trying to print a ResourceMetadata object (#132)

= Unit tests =

  • Unit tests for MetadataStore (#101)
  • Add test for GetNodeMetadata in kubernetes (#102)
  • Add JSON Clone() Is() As() testing. (#104)
  • Unittests for InstanceMonitoredResource and InstanceResourceMetadata (#105)
  • Added test for ComputePodAssociations (#109)
  • Unittests for inherited callbacks and configuration validator in updater.h (#111)
  • Added GetPodMetadata unit test (#118)
  • Add GetContainerMetadata test. (#119)
  • Added unit test for GetLegacyResource (#120)

= Miscellaneous =

  • Bump version to 0.0.19-1. (#116)
  • Allow supplying callbacks for specific endpoints in the API server. (#93)
  • Factor out dependencies in test/Makefile. (#107)
  • Update a log from error to debug. (#124)

v0.0.18

29 Mar 19:30
b399404
Compare
Choose a tag to compare
v0.0.18 Pre-release
Pre-release

= Features =

  • Add support for cluster-level queries for nodes and unscheduled pods. (#73)
  • Add a User-Agent header to metadata API requests; allow overriding via config; add --version argument. (#84)
  • Add file health check support (#85)
    • Add an explicit dependency on libboost-filesystem. (#98)
  • Disable Kubernetes polling by default (only use watch). (#60)

= Bug fixes =

  • Explicitly add the CA certificate when connecting to the Kubernetes master. (#70)
  • Fix parsing of fractional seconds. (#65)
  • Guard access to containerStatuses by checking if the key exists. (#79)
  • Remove pod startTime, as it is causing exceptions and is not used. (#81)
  • Update the FindTopLevelOwner function to extract only controllers. (#95)

= Unit tests =

  • Add the first unit test (format) (#53)
  • Base64 unit tests (#71)
  • Support configuration testing (#80)
  • Added basic resource unittests (#86)
  • Add constructor that parses configuration to support testing. (#88)
  • Add JSON unit tests. (#92)

= Miscellaneous =

  • Bump version to 0.0.18-1. (#103)
  • Add instructions for building on Debian 9. (#68)
  • Move all time-related functionality into the time library; ensure high-precision timestamp representation. (#75)
  • Update cpp-netlib to the latest (540ed7622be3f9534709036522f86bde1e84829f). (#78)
    • Update responses to include Content-Type headers and return JSON for 404s. (#99)
  • Factor MetadataStore, MetadataReporter, and MetadataAgent into their own files. (#87)
  • Add a LookupMetadata function to the metadata store. (#90)
  • Rename MetadataAgentConfiguration to Configuration (#91)
  • Temporarily disable Ubuntu Trusty instructions. (#97)
  • Temporarily disable CentOS 7 instructions. (#96)
  • Fix recursive make. (#64)
  • Ignore dirty submodules. (#67)
  • Turn off throw() warnings in GCC 7+. (#72)
    • Suppress GCC 7+ warnings in test builds. (#94)
  • Pull out the body callback, so that only the chunk assembling code is in Watcher. (#66)
  • Replace all std::bind instances with lambda expressions. (#83)
  • Remove stale (and commented out) includes of config.h. (#89)
  • Fix up gitdir pointers in submodules on broken git versions. (#82)

v0.0.17

27 Feb 23:41
Compare
Choose a tag to compare
v0.0.17 Pre-release
Pre-release
  • Add the full instance monitored resource to associations. (#52)
  • Explicitly list the submodules during init and deinit. (#54)
  • Remove "Name" postfix in the local resource ID for consistency. (#56)
  • Add implicit instance resource mapping. (#55)
    • Turn MetadataApiResourceTypeSeparator and MetadataIngestionRawContentVersion into configuration options.
  • Add instance association to Docker containers. (#59)
  • Handle error response codes to HTTP requests. (#61)
  • Retrieve cluster location from metadata attributes, rather than using the instance zone. (#57)
  • Handle deletion events from watch and purge deleted entries. (#62)
  • Be more robust in handling broken chunked encoding. (#58)
    • Ignore the rest of the streaming input when an error is encountered.
  • Update maintainer name and email.
  • Add validation to only start updaters if they're configured properly. (#63)

v0.0.16

05 Feb 21:27
570623c
Compare
Choose a tag to compare
v0.0.16 Pre-release
Pre-release

Remove node_name from k8s_pod and k8s_container monitored resources. (#50)
Restore container_id local resource ID when present. (#51)

v0.0.15

23 Jan 20:17
Compare
Choose a tag to compare
v0.0.15 Pre-release
Pre-release

The agent will no longer fail on containers that are not running. (#49)
Pods without labels are no longer causing the agent to fail. (#48)
Issue with container spec / status order mismatch has been resolved. (#47)
Update the default Kubernetes master endpoint to allow the agent to be run in any Kubernetes namespace. (#41)
The local resource ID for pods by ID has been updated to no longer include the namespace name, as it's redundant. (#42)

v0.0.14

23 Jan 20:12
d68c701
Compare
Choose a tag to compare
v0.0.14 Pre-release
Pre-release

Improve synchronization when updating internal data structures. (#37)
Add support for command-line options and guard verbose logging with an option. (#36)
Miscellaneous fixes to the JSON library and cleanup. (#43)
Owner information is now memoized to minimize calls to the master. (#46)
Improve internal resource storage library. (#44)
Enable watching for Kubernetes updates instead of polling the master. (#45)

v0.0.13

14 Sep 23:22
Compare
Choose a tag to compare
v0.0.13 Pre-release
Pre-release

Make the credentials file optional. (#30)
Allow generating the docker image via make. (#31)
Rename primaryController* to topLevelController*. (#32)

v0.0.12

13 Sep 17:19
Compare
Choose a tag to compare
v0.0.12 Pre-release
Pre-release

Fix build error with gcc5 and add endpoint logging. (#24)
Implement new Kubernetes resources and metadata. (#25)
Support building on MacOS. (#26)