<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Spinnaker – Reference</title>
    <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/</link>
    <description>Recent content in Reference on Spinnaker</description>
    <generator>Hugo -- gohugo.io</generator>
    
	  <atom:link href="https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: Spinnaker Architecture</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/architecture/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/architecture/</guid>
      <description>
        
        
        
      </description>
    </item>
    
    <item>
      <title>Docs: API</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/api/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/api/</guid>
      <description>
        
        
        &lt;ul&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/api/docs.html&#34;&gt;API documentation&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/api/swagger-ui&#34;&gt;Swagger UI Guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Halyard</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/halyard/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/halyard/</guid>
      <description>
        
        
        &lt;h1 id=&#34;halyard-is-deprecated&#34;&gt;HALYARD IS DEPRECATED&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;[!IMPORTANT]
At this time, halyard is considered deprecated and no longer supported.&lt;br&gt;
This document is kept here and alive for historical purposes. Documentation
should all be moved to native configuration files, and for more questions
and information please join the spinnaker slack.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;legacy-documentation&#34;&gt;Legacy Documentation&lt;/h3&gt;
&lt;p&gt;This is the reference documentation for Halyard, and will go into more detail
than is needed to deploy most Spinnaker environments. If you&amp;rsquo;re a new user
looking for instructions for how to use Halyard to deploy Spinnaker, checkout
the 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/install/&#34;&gt;setup instructions&lt;/a&gt;
 first.&lt;/p&gt;
&lt;h2 id=&#34;terminology&#34;&gt;Terminology&lt;/h2&gt;
&lt;h3 id=&#34;halconfig&#34;&gt;Halconfig&lt;/h3&gt;
&lt;p&gt;The Halconfig is the source of all configuration for your Deployment of
Spinnaker. It typically lives in &lt;code&gt;~/.hal/config&lt;/code&gt;, but its directory can be
changed with the &lt;code&gt;halyard.halconfig.directory&lt;/code&gt; Spring config property.&lt;/p&gt;
&lt;h3 id=&#34;deployments&#34;&gt;Deployments&lt;/h3&gt;
&lt;p&gt;A Deployment within Halyard is a single, deployed/installed &amp;amp; configured
Spinnaker. Each deployment has its own set of configuration and running
services, and is logically separated from any other Deployment of Spinnaker
that Halyard is managing. The deployments are referenced by name, and the
default name for your first Deployment is &lt;code&gt;&amp;quot;default&amp;quot;&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The intended use-case for Deployments is managing multiple, isolated Spinnakers
that need to be kept separate for one reason or another (compliance, network
configuration, etc&amp;hellip;).&lt;/p&gt;
&lt;p&gt;You can switch to/create a new deployment named &lt;code&gt;$DEPLOYMENT&lt;/code&gt; by running the
following command.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hal config --set-current-deployment &lt;span style=&#34;color:#000&#34;&gt;$DEPLOYMENT&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;artifacts&#34;&gt;Artifacts&lt;/h3&gt;
&lt;p&gt;Artifacts are unconfigured, versioned, prebuilt deployables consumed by
Halyard.&lt;/p&gt;
&lt;p&gt;For example, the Clouddriver Docker image
&lt;code&gt;gcr.io/spinnaker-marketplace/clouddriver:0.2.0-348&lt;/code&gt; is an Artifact, or the
Debian Echo package &lt;code&gt;spinnaker-releases/debians/spinnaker-echo=0.2.0-214&lt;/code&gt; is
another Artifact.&lt;/p&gt;
&lt;h3 id=&#34;profiles&#34;&gt;Profiles&lt;/h3&gt;
&lt;p&gt;Profiles are configuration files applied to Artifacts to make them run in some
desired fashion.&lt;/p&gt;
&lt;p&gt;For example, &lt;code&gt;clouddriver-bootstrap.yml&lt;/code&gt; and &lt;code&gt;clouddriver.yml&lt;/code&gt; are both
profiles that are consumed by the Clouddriver Artifact above.&lt;/p&gt;
&lt;p&gt;During the deployment process Halyard will stage all generated profiles in
&lt;code&gt;~/.hal-staging/&lt;/code&gt; (configurable via &lt;code&gt;spinnaker.config.staging.directory&lt;/code&gt;)
before either uploading them to your deployment environment&amp;rsquo;s secret store, or
copying them to the necessary local directories.&lt;/p&gt;
&lt;p&gt;A Profile&amp;rsquo;s name is derived from its path relative to &lt;code&gt;~/.hal-staging/&lt;/code&gt;. For
example, the Profile found under &lt;code&gt;~/.hal-staging/clouddriver.yml&lt;/code&gt; has name
&lt;code&gt;clouddriver.yml&lt;/code&gt;, and the Profile found under
&lt;code&gt;~/.hal-staging/registry/echo.yml&lt;/code&gt; has name &lt;code&gt;registry/echo.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;services&#34;&gt;Services&lt;/h3&gt;
&lt;p&gt;Services are the combination of an Artifact, with a set of Profiles
that apply to that Artifact. For example, the Artifact&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;gcr.io/spinnaker-marketplace/clouddriver:0.2.0-348&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;combined with the Profiles&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;clouddriver.yml&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;clouddriver-bootstrap.yml&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;constructs the &lt;code&gt;spin-clouddriver-bootstrap&lt;/code&gt; service.&lt;/p&gt;
&lt;p&gt;The associations between Profiles and Services are recorded in
&lt;code&gt;~/.hal/$DEPLOYMENT/history/service-profiles.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;service-settings&#34;&gt;Service Settings&lt;/h3&gt;
&lt;p&gt;Service Settings are runtime properties of Services, such as which address they
bind to, or what port they should listen on. Service Settings are ultimately
baked into Profiles, but are kept separate since they need to be collectively
distributed to each Service, since they describe how each Service discovers the
others.&lt;/p&gt;
&lt;p&gt;You can see what global Service Settings Halyard has generated for your current
Deployment of Spinnaker by reading
&lt;code&gt;~/.hal/$DEPLOYMENT/history/service-settings.yml&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;bill-of-materials&#34;&gt;Bill of Materials&lt;/h3&gt;
&lt;p&gt;Since Spinnaker is composed of several microservices, we need some way to
express which versions of each service have been validated together, and
provide that set of service versions a top-level version that can be referenced
by users installing/deploying Spinnaker. This set of versions is referred to as
the &lt;strong&gt;Bill of Materials&lt;/strong&gt; (BOM). Below is an example BOM:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;dependencies&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;consul&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.7.5&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;redis&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;2&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;2.8.4-2&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;vault&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.7.0&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;services&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;clouddriver&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.4.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;deck&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1.2.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;echo&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.2.1-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;fiat&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.2.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;front50&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.3.1-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;gate&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.4.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;igor&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.3.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;monitoring-daemon&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.1.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;monitoring-third-party&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.1.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;orca&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.4.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;rosco&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.3.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;spinnaker&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0.4.0-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;timestamp&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;2017-05-26 11:30:46&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;version&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;master-2017-05-26-393&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;If you&amp;rsquo;re curious how to deploy Spinnaker yourself using a validated BOM, read
more in the 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/halyard/#deployments&#34;&gt;deployments&lt;/a&gt;
 section.&lt;/p&gt;
&lt;h2 id=&#34;links&#34;&gt;Links&lt;/h2&gt;
&lt;p&gt;Halyards code lives on GitHub at 
&lt;a href=&#34;https://github.com/spinnaker/halyard&#34; target=&#34;_blank&#34;&gt;spinnaker/halyard&lt;/a&gt;
.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Monitoring</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/monitoring/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/monitoring/</guid>
      <description>
        
        
        &lt;p&gt;If you&amp;rsquo;re looking on instructions for how to install or setup monitoring, checkout the

&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/other_config/monitoring/&#34;&gt;Enable Monitoring&lt;/a&gt;
 section in the

&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/&#34;&gt;Spinnaker Setup Guide&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;/spectator/metrics&lt;/code&gt; JSON format documented here describes Spinnaker&amp;rsquo;s
Spectator/Micrometer metric data model. For the recommended way to collect
metrics and traces with OpenTelemetry, see

&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/other_config/monitoring/#opentelemetry-recommended&#34;&gt;OpenTelemetry (Recommended)&lt;/a&gt;

in the setup guide.&lt;/p&gt;
&lt;h2 id=&#34;metrics-overview&#34;&gt;Metrics overview&lt;/h2&gt;
&lt;p&gt;A Spinnaker metric is a named collection of measurements used to track
a type of activity over time. There are two basic types of metrics: counters
and gauges. A counter measures how many times the activity occured over the
lifetime of the process (e.g. how many actions have ever occurred) whereas
a gauge measures an instantaneous value (e.g. how many actions are active now).&lt;/p&gt;
&lt;p&gt;Each recorded measurement has a set of tags and a timestamped value.
The tags are used to capture the context or aspect of the value.
For example, each Spinnaker microservice uses a single counter metric
(&amp;ldquo;controller.invocations&amp;rdquo;) to monitor how many HTTP calls it handled.
Since the microservices have many different HTTP endpoints, they add
a tag (&amp;ldquo;method&amp;rdquo;) to the measurement indicating which was called.
Internally the endpoints are grouped together for different types that
are managed by a particular controller, so the measurements are also tagged
with a &amp;ldquo;controller&amp;rdquo; tag.&lt;/p&gt;
&lt;p&gt;Operationally, you want to be able to distinguish successful calls from
failures in order to detect problems that might come up. Rather than
creating different metrics for each type of failure or success (or failure
vs success), the measurements are tagged with a &amp;ldquo;success&amp;rdquo; tag as well
as a &amp;ldquo;statusCode&amp;rdquo; tag. The end result is that there is just a single metric
&amp;ldquo;controller.invocations&amp;rdquo;, but the measurements within it are richly decorated
with details so that individual metrics can be filtered to view a much finer
granularity.&lt;/p&gt;
&lt;p&gt;In essence, the sequence of timestamped measurements for a Spinnaker metric
can be partitioned by their tag bindings so that all the measurements for the
same set of tag bindings form their own sequence (e.g. all the successful
calls to the &amp;ldquo;list&amp;rdquo; method vs all the failed calls to the &amp;ldquo;list&amp;rdquo; method vs
all the failed calls to the &amp;ldquo;get&amp;rdquo; method). The monitoring systems will
typically treat each of these as their own time-series and allow you to
filter by some tags, then aggregate by or break out by each of the others
so that you can view the measurements at the abstraction and granularity
that makes sense for what your interest is (e.g. global failures,
attempted modifications to a particular resource type, etc).&lt;/p&gt;
&lt;p&gt;Here is an example of the metric &lt;code&gt;controller.invocations&lt;/code&gt; in Front50.&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&amp;#34;tags&amp;#34;: [
    {
        &amp;#34;key&amp;#34;: &amp;#34;application&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;mysnazzyapp&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;controller&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;PipelineController&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;method&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;listByApplication&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;statistic&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;count&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;status&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;2xx&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;statusCode&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;200&amp;#34;
    },
    {
        &amp;#34;key&amp;#34;: &amp;#34;success&amp;#34;,
        &amp;#34;value&amp;#34;: &amp;#34;true&amp;#34;
    }
],
&amp;#34;values&amp;#34;: [
    {
        &amp;#34;t&amp;#34;: 1500000000000,
        &amp;#34;v&amp;#34;: 100.0
    }
]
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The interpretation of this is that as of time &lt;code&gt;t=1500000000000&lt;/code&gt; (milliseconds
since unix epoch), there were &lt;code&gt;v=100&lt;/code&gt; calls to the &lt;code&gt;listByApplication&lt;/code&gt;
method of the pipeline controller, where the application was &lt;code&gt;mysnazzyapp&lt;/code&gt; and
resulted in a HTTP 200 status code. While there are some patterns to tags, there
are no actual standards suggesting how to interpret these.&lt;/p&gt;
&lt;p&gt;As noted above, monitoring will typically aggregate many of these time-series
together in practice allowing you to choose the level of granularity depending
on what you are interested in paying attention to at any given point in time.
Since the data is collected very granular, you can go back in time and dig into
the details should you need to diagnose or compare them later.&lt;/p&gt;
&lt;p&gt;Note that the values are for the lifetime of this particular process instance,
and only this instance. Each repilca has its own count, and the counts are
reset each time the process restarts. It is up to the backing monitoring
service to aggregate these counts across replicas.&lt;/p&gt;
&lt;h2 id=&#34;json-document-format&#34;&gt;JSON document format&lt;/h2&gt;
&lt;p&gt;Metrics are returned in the following format:&lt;/p&gt;
&lt;h3 id=&#34;top-level-document&#34;&gt;Top-level document&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Key&lt;/th&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;applicationName&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;The name of the microservice.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;applicationVersion&lt;/td&gt;
&lt;td&gt;string&lt;/td&gt;
&lt;td&gt;The version number of the microservice.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;metrics&lt;/td&gt;
&lt;td&gt;
&lt;a href=&#34;#metric-entry&#34;&gt;See Metric Entry&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;The individual metric entries.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;startTime&lt;/td&gt;
&lt;td&gt;int&lt;/td&gt;
&lt;td&gt;Unix epoch time &lt;em&gt;milliseconds&lt;/em&gt; that process started.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;metric-entry&#34;&gt;Metric entry&lt;/h3&gt;
&lt;p&gt;The metrics dictionary contains an entry for each reported metric name.
The dictionary key is the name of the metric. The entry contains the data for the metric.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Key&lt;/th&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;kind&lt;/td&gt;
&lt;td&gt;String&lt;/td&gt;
&lt;td&gt;The type of metric. &lt;code&gt;Counter&lt;/code&gt; is a numeric monotonically increasing numeric counter. &lt;code&gt;Gauge&lt;/code&gt; is an instantaneous numeric value. &lt;code&gt;Timer&lt;/code&gt; is a nanosecond counter.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;values&lt;/td&gt;
&lt;td&gt;List of 
&lt;a href=&#34;#time-series-data-point&#34;&gt;Time-Series Data Point&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;A metric will have one or more time-series associated with it. The current value for each of these is in this list.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;time-series-data-point&#34;&gt;Time-series data point&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Key&lt;/th&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;tags&lt;/td&gt;
&lt;td&gt;List of Tag Bindings&lt;/td&gt;
&lt;td&gt;A tag-binding is a &lt;code&gt;key&lt;/code&gt;, &lt;code&gt;value&lt;/code&gt; pair expressed as a dictionary with two entries; &lt;code&gt;key&lt;/code&gt; and &lt;code&gt;value&lt;/code&gt;. Each of these has a string value. The value of the &lt;code&gt;key&lt;/code&gt; is the name of the tag. The value of the &lt;code&gt;value&lt;/code&gt; is the value for the tag. For example, &lt;code&gt;{&amp;quot;key&amp;quot;: &amp;quot;success&amp;quot;, &amp;quot;value&amp;quot;: &amp;quot;true&amp;quot;}&lt;/code&gt; is associating the tag &lt;code&gt;success=true&lt;/code&gt; to the time-series. &lt;br&gt;In practice, each time-series usually has several different tags (i.e. the context used to tag a metric, has multiple dimensions to it, each of which described by a different tag).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;values&lt;/td&gt;
&lt;td&gt;List of Timestamped Value&lt;/td&gt;
&lt;td&gt;In practice this is a list of one element, which is only the most current value. The element is a dictionary with two keys. &lt;code&gt;v&lt;/code&gt; for the value, which is a real, even for scalar values, and &lt;code&gt;t&lt;/code&gt; for the timestamp as milliseconds since the Unix epoch.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Providers</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/</guid>
      <description>
        
        
        &lt;blockquote&gt;
&lt;p&gt;To setup a cloud provider, see 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/install/providers/&#34;&gt;Cloud Provider&lt;/a&gt;
.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;supported-providers&#34;&gt;Supported providers&lt;/h2&gt;
&lt;p&gt;These are the Cloud Providers currently supported by Spinnaker:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/appengine/&#34;&gt;App Engine&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Amazon Web Services&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/azure/&#34;&gt;Azure&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/cf&#34;&gt;Cloud Foundry&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/gce/&#34;&gt;Google Compute Engine&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/kubernetes&#34;&gt;Kubernetes&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/providers/oracle/&#34;&gt;Oracle Cloud&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Note:&lt;/em&gt; The OpenStack provider was supported for a period of time, but after several releases without support 
&lt;a href=&#34;https://github.com/spinnaker/spinnaker/issues/4316&#34; target=&#34;_blank&#34;&gt;this RFC&lt;/a&gt;
 concluded with the removal of the provider from Spinnaker. If you are interested in adding this provider back in and supporting it we would be more than happy to help revert the removal.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Secrets</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/secrets/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/secrets/</guid>
      <description>
        
        
        &lt;p&gt;Spinnaker supports separating your secrets from your configs through end-to-end secrets management. Simply replace
secrets in your config files with the syntax described here, and Spinnaker decrypts them as needed at start time.&lt;/p&gt;
&lt;h2 id=&#34;secret-format&#34;&gt;Secret Format&lt;/h2&gt;
&lt;p&gt;To reference secrets in configs, use the following general format for secret literal values, like passwords and tokens:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;encrypted:&amp;lt;secret engine&amp;gt;!&amp;lt;key1&amp;gt;:&amp;lt;value1&amp;gt;!&amp;lt;key2&amp;gt;:&amp;lt;value2&amp;gt;!...
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;To reference secret files like kubeconfig files the syntax is:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;encryptedFile:&amp;lt;secret engine&amp;gt;!&amp;lt;key1&amp;gt;:&amp;lt;value1&amp;gt;!&amp;lt;key2&amp;gt;:&amp;lt;value2&amp;gt;!...
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The key-value parameters making up the string vary with each secret engine. Refer to the specific documentation for each engine for more information.&lt;/p&gt;
&lt;p&gt;For instance, if you replace the GitHub token in your config with an encrypted syntax:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000&#34;&gt;...&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;github&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;enabled&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;accounts&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;- &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;github&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;token&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;encrypted:&amp;lt;secret engine&amp;gt;!&amp;lt;key1&amp;gt;:&amp;lt;value1&amp;gt;!&amp;lt;key2&amp;gt;:&amp;lt;value2&amp;gt;!...&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;...&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Spinnaker will read these secrets at start time.&lt;/p&gt;
&lt;h2 id=&#34;supported-secret-engines&#34;&gt;Supported Secret Engines&lt;/h2&gt;
&lt;p&gt;The secrets framework is extensible and support for new engines can easily be added. Currently the following is supported:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/secrets/s3-secrets/&#34;&gt;S3&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/secrets/gcs-secrets/&#34;&gt;GCS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/secrets/secret-manager-secrets/&#34;&gt;AWS Secrets Manager&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Google Secrets manager is also supported though not at this time documented.  You can see

&lt;a href=&#34;https://github.com/spinnaker/spinnaker/blob/main/kork/kork-secrets-gcp/src/main/java/com/netflix/spinnaker/kork/secrets/engines/GoogleSecretsManagerSecretEngine.java&#34; target=&#34;_blank&#34;&gt;the code and translate it&lt;/a&gt;
 to a supported format.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: What is a Spinnaker Artifact?</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts/</guid>
      <description>
        
        
        &lt;p&gt;A Spinnaker artifact is a named JSON object that refers to an external resource.&lt;/p&gt;
&lt;p&gt;Spinnaker supports a wide range of providers. An artifact can reference any of many different external resources, such as…&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a Docker image&lt;/li&gt;
&lt;li&gt;a file stored in GitHub&lt;/li&gt;
&lt;li&gt;an Amazon Machine Image (AMI)&lt;/li&gt;
&lt;li&gt;a binary blob in Amazon S3, Google Cloud Storage, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each of these could be fetched using a URI and used within a pipeline, but a URI alone can omit other important
information about the resource. You may wish to also fetch provenance information such as the commit that triggered the
resource&amp;rsquo;s build, or to store information about the account that has permission to download the resource.&lt;/p&gt;
&lt;p&gt;To incorporate metadata such as this along with the resource&amp;rsquo;s URI, Spinnaker artifacts follow a particular
specification that includes the human-readable name of the artifact, its URI, and any other applicable metadata. This is
called &amp;ldquo;artifact decoration&amp;rdquo;. Every Spinnaker artifact&amp;ndash;whether supplied to a pipeline, accessed within a pipeline, or
produced by a pipeline&amp;ndash;follows this specification.&lt;/p&gt;
&lt;p&gt;Keep in mind that the artifact in Spinnaker is a &lt;em&gt;reference&lt;/em&gt; to an external resource&amp;ndash;it is not the resource itself. The
resource itself could be of any type supported by Spinnaker; the artifact is the named JSON object that contains
information about the resource.&lt;/p&gt;
&lt;h2 id=&#34;the-artifact-format&#34;&gt;The artifact format&lt;/h2&gt;
&lt;p&gt;As an example, an object stored in Google Cloud Storage (GCS) might be accessed using the following Spinnaker artifact:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcs/object&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;reference&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gs://bucket/file.json#135028134000&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gs://bucket/file.json&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;version&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;135028134000&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;us-central1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;As another example, a Docker image might be accessed using the following artifact:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;docker/image&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;reference&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcr.io/project/image@sha256:29fee8e284&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcr.io/project/image&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;version&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;sha256:29fee8e284&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The fields that make up a Spinnaker artifact are described below.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th style=&#34;width:12%&#34;&gt;Field&lt;/th&gt;
      &lt;th style=&#34;width:69%&#34;&gt;Explanation&lt;/th&gt;
      &lt;th style=&#34;width:19%&#34;&gt;Notes&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;type&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;How the external resource is classified. (This allows for easy distinction between Docker images and Debian packages, for example).&lt;/td&gt;
      &lt;td&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;reference&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;The URI used to fetch the resource.&lt;/td&gt;
      &lt;td&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;artifactAccount&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;The Spinnaker artifact account that has permission to fetch the resource.&lt;/td&gt;
      &lt;td&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;version&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;The version of the resource. (By convention, &lt;code&gt;version&lt;/code&gt; should only be compared between artifacts of the same &lt;code&gt;type&lt;/code&gt; and &lt;code&gt;name&lt;/code&gt;.)&lt;/td&gt;
      &lt;td&gt;Optional.&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;provenance&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;The relevant URI from the system that produced the resource. (This is used for deep-linking into other systems from Spinnaker.)&lt;/td&gt;
      &lt;td&gt;Optional.&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;metadata&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Arbitrary key / value metadata pertaining to the resource. (This can be useful for scripting within pipeline stages.)&lt;/td&gt;
      &lt;td&gt;Optional.&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;location&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;The region, zone, or namespace of the resource. (This does not add information to the URI, but makes multi-regional deployments easier to configure.)&lt;/td&gt;
      &lt;td&gt;Optional.&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Used for tracing the artifact within Spinnaker.&lt;/td&gt;
      &lt;td&gt;Assigned by Spinnaker.&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;expected-artifacts&#34;&gt;Expected artifacts&lt;/h2&gt;
&lt;p&gt;Within a pipeline trigger or stage, you can declare that the trigger or stage expects a particular artifact to be
available. This artifact is called an &lt;em&gt;expected artifact&lt;/em&gt;. Spinnaker compares an incoming artifact (for example, a
manifest file stored in GitHub) to the expected artifact (for example, a manifest with the file path
&lt;code&gt;path/to/my/manifest.yml&lt;/code&gt;); if the incoming artifact matches the specified expected artifact, the incoming artifact is
&lt;em&gt;bound&lt;/em&gt; to that expected artifact and used by the trigger or stage.&lt;/p&gt;
&lt;p&gt;&amp;lt;img
src=&amp;quot;./expected-artifact-github-file.png&amp;quot;
alt=&amp;ldquo;Configuring GitHub file fields in a pipeline trigger&amp;rsquo;s Expected
Artifact settings. The default Display Name value is
auto-generated.&amp;rdquo;
/&amp;gt;&lt;/p&gt;
&lt;h3 id=&#34;match-artifact&#34;&gt;Match artifact&lt;/h3&gt;
&lt;p&gt;When declaring an expected artifact for a trigger, you can use fields under &lt;strong&gt;Match Artifact&lt;/strong&gt; to specify metadata against which to compare the incoming artifact. This is how you can distinguish between similar artifacts coming from the same artifact account (for example, multiple manifest files stored in a single Git repository) and specify that the trigger should begin pipeline execution only if the incoming artifact matches the parameters that you provided.&lt;/p&gt;
&lt;h3 id=&#34;prior-execution-and-default-artifact&#34;&gt;Prior execution and default artifact&lt;/h3&gt;
&lt;p&gt;In the fields under &lt;strong&gt;If Missing&lt;/strong&gt;, you can provide fallback behavior for the expected artifact in case the trigger doesn&amp;rsquo;t find the desired artifact. If you enable the &lt;strong&gt;Use prior execution&lt;/strong&gt; checkbox, Spinnaker will fall back to the artifact used in the last execution. If you enable the &lt;strong&gt;Use default artifact&lt;/strong&gt; checkbox, Spinnaker will use a default artifact, which you can specify in the form (this allows you to provide fallback behavior for the first time a trigger is used, when there is no previous execution yet).&lt;/p&gt;
&lt;h2 id=&#34;enabling-artifact-support&#34;&gt;Enabling artifact support&lt;/h2&gt;
&lt;p&gt;Clouddriver currently handles artifact fetches and processing and caching.  Enable artifacts by setting up the appropriate 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/setup/other_config/artifacts/&#34;&gt;artifact
type&lt;/a&gt;
.  You can enable artifact handling in clouddriver by adding the following config:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;artifacts&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;enabled&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;old-docs-and-references&#34;&gt;Old docs and references&lt;/h3&gt;
&lt;p&gt;These pages refer to the newer Artifacts UI. For information about the legacy Artifacts UI, see this 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts-legacy/&#34;&gt;page&lt;/a&gt;
.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Spinnaker Artifacts - Legacy UI</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts-legacy/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts-legacy/</guid>
      <description>
        
        
        &lt;blockquote&gt;
&lt;p&gt;This section refers to the legacy artifacts UI, which was removed
in release 1.21. Please refer to the 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/artifacts/&#34;&gt;standard artifacts guide&lt;/a&gt;

instead.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In Spinnaker, an artifact is an object that references an external resource. That resource could be…&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a Docker image&lt;/li&gt;
&lt;li&gt;a file stored in GitHub&lt;/li&gt;
&lt;li&gt;an Amazon Machine Image (AMI)&lt;/li&gt;
&lt;li&gt;a binary blob in S3, GCS, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Any of these can be fetched using a 
&lt;a href=&#34;https://en.wikipedia.org/wiki/Uniform_Resource_Identifier&#34; target=&#34;_blank&#34;&gt;URI&lt;/a&gt;
, and can be
used within a Spinnaker pipeline.&lt;/p&gt;
&lt;p&gt;However, a URI alone isn&amp;rsquo;t always enough. Take the following examples:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;You have a “Bake Image” stage that defines which packages are to be consumed,
which images are deployed into each environment, and which configuration files are mounted.
If each of these artifact types is just a URI, you have to write (and maintain) RegEx (or similar)
against URIs to match artifacts to stages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Your build system produces provenance information about your Docker images
(for example, which commit triggered the build, which build steps were used).
This isn’t easy to store in or retrieve from the Docker image, but you want to trigger the
pipeline on the arrival of a new image. If all you capture is the URI
(for example, &lt;code&gt;gcr.io/your-project/your-image:v1.0.0&lt;/code&gt;) you lose that provenance information.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Your Spinnaker instance is used by many teams in your organization,
and your authorization policies isolate teams&#39;
infrastructure and pipelines from each other. You probably want your
packages, configs, and images published and accessible only by the teams that need
them. You need a way to annotate a URI with an account that can fetch
it based on a user&amp;rsquo;s permissions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To address situations like these, Spinnaker includes a format for supplying
URIs alongside pertinent metadata. We call this &amp;ldquo;artifact decoration&amp;rdquo;.&lt;/p&gt;
&lt;h1 id=&#34;decorate-your-artifacts&#34;&gt;Decorate your artifacts&lt;/h1&gt;
&lt;p&gt;In Spinnaker, artifacts must match a specification. This specification is
consistent among all artifacts, whether they&amp;rsquo;re supplied to pipelines, accessed
within pipelines, or produced by pipelines.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Every time we refer to an &lt;em&gt;Artifact&lt;/em&gt;, we mean a JSON payload matching this
specification, not the actual artifact contents. The key distinction is that
the artifact is a reference or a pointer to a resource, not the resource
itself.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;format&#34;&gt;Format&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;       &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// How this artifact is classified. Allows for easy distinction
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// between docker images and debian packages, for example.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;reference&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;  &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// The URI.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;artifactAccount&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// The account configured within Spinnaker that has
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// permission to download this resource.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;       &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Optional) A human-readable name that makes matching
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// artifacts simpler.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;version&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;    &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Optional) The version of this artifact. By convention, the
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// &amp;#34;version&amp;#34; should be compared against other artifacts with
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// the same &amp;#34;type&amp;#34; and &amp;#34;name&amp;#34;.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;provenance&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Optional) A link to whatever produced this artifact. This
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// is used for deep-linking into other systems from Spinnaker.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;   &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Optional) Arbitrary k/v metadata useful for scripting
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// within stages.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;   &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Optional) The region/zone/namespace this artifact can be
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// found in. This doesn&amp;#39;t add information to the URI, but makes
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// multi-regional deployments easier to configure.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;uuid&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt;       &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// (Assigned by Spinnaker) Used for tracing artifacts within
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;                &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// Spinnaker.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;examples&#34;&gt;Examples&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// A docker image
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;docker/image&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;reference&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcr.io/project/image@sha256:29fee8e284&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcr.io/project/image&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;version&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;sha256:29fee8e284&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// A GCS object
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gcs/object&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;reference&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gs://bucket/file.json#135028134000&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gs://bucket/file.json&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;version&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;135028134000&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;us-central1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// An S3 object
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3/object&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3://bucket/file.json&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;us-east-1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;example-for-providing-artifacts-with-spin-cli&#34;&gt;Example for providing artifacts with &lt;code&gt;spin&lt;/code&gt; CLI&lt;/h3&gt;
&lt;p&gt;When you execute a pipeline with the 
&lt;a href=&#34;https://deploy-preview-629--spinnaker-io.netlify.app/docs/guides/spin/&#34;&gt;&amp;lt;code&amp;gt;spin&amp;lt;/code&amp;gt; CLI&lt;/a&gt;
, the &lt;code&gt;-t, --artifacts-file&lt;/code&gt; option expects a valid JSON file containing a top-level &lt;code&gt;artifacts&lt;/code&gt; key that maps to an array of artifact definitions as mentioned 
&lt;a href=&#34;https://www.spinnaker.io/reference/artifacts/in-pipelines/#artifacts-in-trigger-payloads&#34; target=&#34;_blank&#34;&gt;here&lt;/a&gt;
. For example, you can call&amp;hellip;&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;spin pipeline execute --application ${APPLICATION} --name ${PIPELINE} --parameter-file ${PARAMETER_FILE_PATH} --artifacts-file ${ARTIFACTS_FILE_PATH}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&amp;hellip;with the contents of the file at &lt;code&gt;${ARTIFACTS_FILE_PATH}&lt;/code&gt; as follows:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;artifacts&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3/object&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3://bucket/file.json&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;us-east-1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3/object&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;s3://bucket/file2.json&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;location&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;us-east-1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
      </description>
    </item>
    
    <item>
      <title>Docs: Spinnaker Pipeline Reference</title>
      <link>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/pipeline/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://deploy-preview-629--spinnaker-io.netlify.app/docs/reference/pipeline/</guid>
      <description>
        
        
        
      </description>
    </item>
    
  </channel>
</rss>
