Merge pull request #4726 from mitchellh/sethvargo/rebrand
Update to match HashiCorp styles
|
@ -1,3 +1,3 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
gem "middleman-hashicorp", "0.3.13"
|
||||
gem "middleman-hashicorp", "0.3.22"
|
||||
|
|
|
@ -6,7 +6,7 @@ GEM
|
|||
minitest (~> 5.1)
|
||||
thread_safe (~> 0.3, >= 0.3.4)
|
||||
tzinfo (~> 1.1)
|
||||
autoprefixer-rails (6.7.6)
|
||||
autoprefixer-rails (6.7.7.1)
|
||||
execjs
|
||||
bootstrap-sass (3.3.7)
|
||||
autoprefixer-rails (>= 5.2.1)
|
||||
|
@ -77,7 +77,7 @@ GEM
|
|||
rack (>= 1.4.5, < 2.0)
|
||||
thor (>= 0.15.2, < 2.0)
|
||||
tilt (~> 1.4.1, < 2.0)
|
||||
middleman-hashicorp (0.3.13)
|
||||
middleman-hashicorp (0.3.22)
|
||||
bootstrap-sass (~> 3.3)
|
||||
builder (~> 3.2)
|
||||
middleman (~> 3.4)
|
||||
|
@ -103,7 +103,7 @@ GEM
|
|||
mini_portile2 (2.1.0)
|
||||
minitest (5.10.1)
|
||||
multi_json (1.12.1)
|
||||
nokogiri (1.7.0.1)
|
||||
nokogiri (1.7.1)
|
||||
mini_portile2 (~> 2.1.0)
|
||||
padrino-helpers (0.12.8.1)
|
||||
i18n (~> 0.6, >= 0.6.7)
|
||||
|
@ -138,7 +138,7 @@ GEM
|
|||
turbolinks (5.0.1)
|
||||
turbolinks-source (~> 5)
|
||||
turbolinks-source (5.0.0)
|
||||
tzinfo (1.2.2)
|
||||
tzinfo (1.2.3)
|
||||
thread_safe (~> 0.1)
|
||||
uber (0.0.15)
|
||||
uglifier (2.7.2)
|
||||
|
@ -151,7 +151,7 @@ PLATFORMS
|
|||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
middleman-hashicorp (= 0.3.13)
|
||||
middleman-hashicorp (= 0.3.22)
|
||||
|
||||
BUNDLED WITH
|
||||
1.14.6
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
VERSION?="0.3.13"
|
||||
VERSION?="0.3.22"
|
||||
|
||||
website:
|
||||
@echo "==> Starting website in Docker..."
|
||||
|
|
|
@ -4,4 +4,69 @@ activate :hashicorp do |h|
|
|||
h.name = "packer"
|
||||
h.version = "0.12.3"
|
||||
h.github_slug = "mitchellh/packer"
|
||||
h.website_root = "website"
|
||||
end
|
||||
|
||||
helpers do
|
||||
# Get the title for the page.
|
||||
#
|
||||
# @param [Middleman::Page] page
|
||||
#
|
||||
# @return [String]
|
||||
def title_for(page)
|
||||
if page && page.data.page_title
|
||||
return "#{page.data.page_title} - Packer by HashiCorp"
|
||||
end
|
||||
|
||||
"Packer by HashiCorp"
|
||||
end
|
||||
|
||||
# Get the description for the page
|
||||
#
|
||||
# @param [Middleman::Page] page
|
||||
#
|
||||
# @return [String]
|
||||
def description_for(page)
|
||||
description = (page.data.description || "")
|
||||
.gsub('"', '')
|
||||
.gsub(/\n+/, ' ')
|
||||
.squeeze(' ')
|
||||
|
||||
return escape_html(description)
|
||||
end
|
||||
|
||||
# This helps by setting the "active" class for sidebar nav elements
|
||||
# if the YAML frontmatter matches the expected value.
|
||||
def sidebar_current(expected)
|
||||
current = current_page.data.sidebar_current || ""
|
||||
if current.start_with?(expected)
|
||||
return " class=\"active\""
|
||||
else
|
||||
return ""
|
||||
end
|
||||
end
|
||||
|
||||
# Returns the id for this page.
|
||||
# @return [String]
|
||||
def body_id_for(page)
|
||||
if !(name = page.data.sidebar_current).blank?
|
||||
return "page-#{name.strip}"
|
||||
end
|
||||
if page.url == "/" || page.url == "/index.html"
|
||||
return "page-home"
|
||||
end
|
||||
return ""
|
||||
end
|
||||
|
||||
# Returns the list of classes for this page.
|
||||
# @return [String]
|
||||
def body_classes_for(page)
|
||||
classes = []
|
||||
|
||||
if page && page.data.layout
|
||||
classes << "layout-#{page.data.layout}"
|
||||
end
|
||||
|
||||
return classes.join(" ")
|
||||
end
|
||||
end
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
"builders": [
|
||||
{
|
||||
"type": "docker",
|
||||
"image": "hashicorp/middleman-hashicorp:0.3.13",
|
||||
"image": "hashicorp/middleman-hashicorp:0.3.22",
|
||||
"discard": "true",
|
||||
"run_command": ["-d", "-i", "-t", "{{ .Image }}", "/bin/sh"]
|
||||
}
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
---
|
||||
noindex: true
|
||||
---
|
||||
|
||||
<h2>Page Not Found</h2>
|
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
layout: inner
|
||||
page_title: Page Not Found
|
||||
noindex: true
|
||||
description: |-
|
||||
Page not found!
|
||||
---
|
||||
|
||||
# Page Not Found
|
||||
|
||||
Sorry, the page you tried to visit does not exist. This could be our fault,
|
||||
and if so we will fix that up right away.
|
||||
|
||||
Please go back, or go back to get back on track.
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"name": "Packer by HashiCorp",
|
||||
"icons": [
|
||||
{
|
||||
"src": "<%= image_path('favicons/android-chrome-192x192.png') %>",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "<%= image_path('favicons/android-chrome-512x512.png') %>",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
Before Width: | Height: | Size: 346 B |
Before Width: | Height: | Size: 338 B |
Before Width: | Height: | Size: 596 B |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 8.5 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 812 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.8 KiB |
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="16.000000pt" height="16.000000pt" viewBox="0 0 16.000000 16.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
<metadata>
|
||||
Created by potrace 1.11, written by Peter Selinger 2001-2013
|
||||
</metadata>
|
||||
<g transform="translate(0.000000,16.000000) scale(0.001739,-0.001739)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M3022 8509 l3 -633 1087 -621 1087 -620 3 -1910 3 -1910 560 -318
|
||||
c589 -334 690 -383 860 -418 171 -35 346 -17 468 48 79 43 168 138 211 224 77
|
||||
157 71 19 71 1769 0 1767 7 1612 -81 1876 -166 503 -568 1014 -1014 1291 -78
|
||||
49 -3224 1841 -3245 1849 -13 6 -15 -70 -13 -627z"/>
|
||||
<path d="M1812 4929 l3 -3112 1460 -834 c803 -459 1466 -837 1473 -840 9 -4
|
||||
12 621 12 3105 l0 3111 -1471 840 c-809 463 -1473 841 -1475 841 -2 0 -3
|
||||
-1400 -2 -3111z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 956 B |
|
@ -0,0 +1,272 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 741.7 491" style="enable-background:new 0 0 741.7 491;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:url(#SVGID_1_);}
|
||||
.st1{opacity:0.8;fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st2{opacity:0.5;fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st3{opacity:0.3;fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st4{fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st5{opacity:0.4;fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st6{opacity:0.6;fill-rule:evenodd;clip-rule:evenodd;fill:#1DAEFF;}
|
||||
.st7{fill:none;stroke:#000000;stroke-miterlimit:10;}
|
||||
.st8{fill:#FFFFFF;stroke:#000000;stroke-miterlimit:10;}
|
||||
</style>
|
||||
<title>Artboard 1</title>
|
||||
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="370.8584" y1="491" x2="370.8584" y2="-9.094947e-13">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="0.5175" style="stop-color:#E5E5E4"/>
|
||||
<stop offset="1" style="stop-color:#FFFFFF"/>
|
||||
</linearGradient>
|
||||
<path class="st0" d="M1,491v-5.6l9.8,5.6h2L1,484.2v-28.3L25.5,470v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3
|
||||
L76.6,470v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2
|
||||
l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6
|
||||
l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3L332,470v21h1v-20.4l24.5,14.2v6.2
|
||||
h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4
|
||||
l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2
|
||||
v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3
|
||||
l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4l24.5,14.2v6.2h1v-5.6l9.8,5.6h2
|
||||
l-11.8-6.8v-28.3l24.5,14.2v21h1v-20.4v-1.2v-28.3V440v-28.3v-1.2v-28.3V381v-28.3v-1.2v-28.3V322v-28.3v-1.2v-28.3V263v-28.3v-1.2
|
||||
v-28.3V204v-28.3v-1.2v-28.3V145v-28.3v-1.2V87.2V86V57.7v-1.2V28.2V27V0h-1v26.5l-24.5-14.2V0h-1v11.7L694.9,0h-2l22.3,12.9v28.3
|
||||
L690.6,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L643.8,0h-2l22.3,12.9v28.3L639.5,27V0h-1v26.5L614,12.3V0h-1v11.7L592.7,0h-2L613,12.9
|
||||
v28.3L588.5,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L541.6,0h-2l22.3,12.9v28.3L537.4,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L490.5,0h-2
|
||||
l22.3,12.9v28.3L486.3,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L439.5,0h-2l22.3,12.9v28.3L435.2,27V0h-1v26.5l-24.5-14.2V0h-1v11.7
|
||||
L388.4,0h-2l22.3,12.9v28.3L384.1,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L337.3,0h-2l22.3,12.9v28.3L333,27V0h-1v26.5l-24.5-14.2V0h-1
|
||||
v11.7L286.2,0h-2l22.3,12.9v28.3L281.9,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L235.1,0h-2l22.3,12.9v28.3L230.9,27V0h-1v26.5l-24.5-14.2
|
||||
V0h-1v11.7L184,0h-2l22.3,12.9v28.3L179.8,27V0h-1v26.5l-24.5-14.2V0h-1v11.7L132.9,0h-2l22.3,12.9v28.3L128.7,27V0h-1v26.5
|
||||
l-24.5-14.2V0h-1v11.7L81.9,0h-2l22.3,12.9v28.3L77.6,27V0h-1v26.5L52.1,12.3V0h-1v11.7L30.8,0h-2l22.3,12.9v28.3L26.5,27V0h-1v26.5
|
||||
L1,12.3V0H0v491H1z M716.2,13.4l24.5,14.2V56l-24.5-14.2V13.4z M716.2,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M716.2,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M716.2,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M716.2,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M716.2,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M716.2,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M716.2,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M716.2,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M716.2,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M716.2,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M716.2,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M716.2,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M716.2,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M716.2,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M690.6,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z
|
||||
M690.6,57.7l24.5,14.2v28.3L690.6,86V57.7z M690.6,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M690.6,116.7l24.5,14.2v28.3L690.6,145
|
||||
V116.7z M690.6,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M690.6,175.7l24.5,14.2v28.3L690.6,204V175.7z M690.6,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M690.6,234.7l24.5,14.2v28.3L690.6,263V234.7z M690.6,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M690.6,293.6
|
||||
l24.5,14.2v28.3L690.6,322V293.6z M690.6,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M690.6,352.6l24.5,14.2v28.3L690.6,381V352.6z
|
||||
M690.6,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M690.6,411.6l24.5,14.2v28.3L690.6,440V411.6z M690.6,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M665.1,13.4l24.5,14.2V56l-24.5-14.2V13.4z M665.1,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M665.1,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M665.1,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M665.1,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M665.1,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M665.1,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M665.1,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M665.1,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M665.1,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M665.1,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M665.1,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M665.1,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M665.1,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M665.1,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M639.5,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z
|
||||
M639.5,57.7l24.5,14.2v28.3L639.5,86V57.7z M639.5,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M639.5,116.7l24.5,14.2v28.3L639.5,145
|
||||
V116.7z M639.5,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M639.5,175.7l24.5,14.2v28.3L639.5,204V175.7z M639.5,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M639.5,234.7l24.5,14.2v28.3L639.5,263V234.7z M639.5,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M639.5,293.6
|
||||
l24.5,14.2v28.3L639.5,322V293.6z M639.5,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M639.5,352.6l24.5,14.2v28.3L639.5,381V352.6z
|
||||
M639.5,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M639.5,411.6l24.5,14.2v28.3L639.5,440V411.6z M639.5,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M614,13.4l24.5,14.2V56L614,41.8V13.4z M614,42.9l24.5,14.2v28.3L614,71.3V42.9z M614,72.4l24.5,14.2v28.3
|
||||
L614,100.8V72.4z M614,101.9l24.5,14.2v28.3L614,130.3V101.9z M614,131.4l24.5,14.2v28.3L614,159.8V131.4z M614,160.9l24.5,14.2
|
||||
v28.3L614,189.3V160.9z M614,190.4l24.5,14.2v28.3L614,218.7V190.4z M614,219.9l24.5,14.2v28.3L614,248.2V219.9z M614,249.4
|
||||
l24.5,14.2v28.3L614,277.7V249.4z M614,278.9l24.5,14.2v28.3L614,307.2V278.9z M614,308.4l24.5,14.2v28.3L614,336.7V308.4z
|
||||
M614,337.9l24.5,14.2v28.3L614,366.2V337.9z M614,367.4l24.5,14.2v28.3L614,395.7V367.4z M614,396.9l24.5,14.2v28.3L614,425.2
|
||||
V396.9z M614,426.4l24.5,14.2v28.3L614,454.7V426.4z M588.5,28.2L613,42.4v28.3l-24.5-14.2V28.2z M588.5,57.7L613,71.9v28.3
|
||||
L588.5,86V57.7z M588.5,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M588.5,116.7l24.5,14.2v28.3L588.5,145V116.7z M588.5,146.2l24.5,14.2
|
||||
v28.3l-24.5-14.2V146.2z M588.5,175.7l24.5,14.2v28.3L588.5,204V175.7z M588.5,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M588.5,234.7
|
||||
l24.5,14.2v28.3L588.5,263V234.7z M588.5,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M588.5,293.6l24.5,14.2v28.3L588.5,322V293.6z
|
||||
M588.5,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M588.5,352.6l24.5,14.2v28.3L588.5,381V352.6z M588.5,382.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V382.1z M588.5,411.6l24.5,14.2v28.3L588.5,440V411.6z M588.5,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M562.9,13.4
|
||||
l24.5,14.2V56l-24.5-14.2V13.4z M562.9,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M562.9,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z
|
||||
M562.9,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M562.9,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M562.9,160.9l24.5,14.2v28.3
|
||||
l-24.5-14.2V160.9z M562.9,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M562.9,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M562.9,249.4
|
||||
l24.5,14.2v28.3l-24.5-14.2V249.4z M562.9,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M562.9,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z
|
||||
M562.9,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M562.9,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M562.9,396.9l24.5,14.2v28.3
|
||||
l-24.5-14.2V396.9z M562.9,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M537.4,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z M537.4,57.7
|
||||
l24.5,14.2v28.3L537.4,86V57.7z M537.4,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M537.4,116.7l24.5,14.2v28.3L537.4,145V116.7z
|
||||
M537.4,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M537.4,175.7l24.5,14.2v28.3L537.4,204V175.7z M537.4,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M537.4,234.7l24.5,14.2v28.3L537.4,263V234.7z M537.4,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M537.4,293.6
|
||||
l24.5,14.2v28.3L537.4,322V293.6z M537.4,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M537.4,352.6l24.5,14.2v28.3L537.4,381V352.6z
|
||||
M537.4,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M537.4,411.6l24.5,14.2v28.3L537.4,440V411.6z M537.4,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M511.8,13.4l24.5,14.2V56l-24.5-14.2V13.4z M511.8,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M511.8,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M511.8,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M511.8,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M511.8,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M511.8,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M511.8,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M511.8,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M511.8,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M511.8,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M511.8,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M511.8,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M511.8,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M511.8,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M486.3,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z
|
||||
M486.3,57.7l24.5,14.2v28.3L486.3,86V57.7z M486.3,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M486.3,116.7l24.5,14.2v28.3L486.3,145
|
||||
V116.7z M486.3,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M486.3,175.7l24.5,14.2v28.3L486.3,204V175.7z M486.3,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M486.3,234.7l24.5,14.2v28.3L486.3,263V234.7z M486.3,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M486.3,293.6
|
||||
l24.5,14.2v28.3L486.3,322V293.6z M486.3,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M486.3,352.6l24.5,14.2v28.3L486.3,381V352.6z
|
||||
M486.3,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M486.3,411.6l24.5,14.2v28.3L486.3,440V411.6z M486.3,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M460.7,13.4l24.5,14.2V56l-24.5-14.2V13.4z M460.7,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M460.7,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M460.7,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M460.7,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M460.7,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M460.7,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M460.7,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M460.7,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M460.7,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M460.7,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M460.7,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M460.7,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M460.7,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M460.7,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M435.2,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z
|
||||
M435.2,57.7l24.5,14.2v28.3L435.2,86V57.7z M435.2,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M435.2,116.7l24.5,14.2v28.3L435.2,145
|
||||
V116.7z M435.2,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M435.2,175.7l24.5,14.2v28.3L435.2,204V175.7z M435.2,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M435.2,234.7l24.5,14.2v28.3L435.2,263V234.7z M435.2,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M435.2,293.6
|
||||
l24.5,14.2v28.3L435.2,322V293.6z M435.2,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M435.2,352.6l24.5,14.2v28.3L435.2,381V352.6z
|
||||
M435.2,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M435.2,411.6l24.5,14.2v28.3L435.2,440V411.6z M435.2,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M409.7,13.4l24.5,14.2V56l-24.5-14.2V13.4z M409.7,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M409.7,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M409.7,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M409.7,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M409.7,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M409.7,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M409.7,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M409.7,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M409.7,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M409.7,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M409.7,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M409.7,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M409.7,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M409.7,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M384.1,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z
|
||||
M384.1,57.7l24.5,14.2v28.3L384.1,86V57.7z M384.1,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M384.1,116.7l24.5,14.2v28.3L384.1,145
|
||||
V116.7z M384.1,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M384.1,175.7l24.5,14.2v28.3L384.1,204V175.7z M384.1,205.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V205.2z M384.1,234.7l24.5,14.2v28.3L384.1,263V234.7z M384.1,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M384.1,293.6
|
||||
l24.5,14.2v28.3L384.1,322V293.6z M384.1,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M384.1,352.6l24.5,14.2v28.3L384.1,381V352.6z
|
||||
M384.1,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M384.1,411.6l24.5,14.2v28.3L384.1,440V411.6z M384.1,441.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V441.1z M358.6,13.4l24.5,14.2V56l-24.5-14.2V13.4z M358.6,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M358.6,72.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V72.4z M358.6,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M358.6,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M358.6,160.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V160.9z M358.6,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M358.6,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z
|
||||
M358.6,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M358.6,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z M358.6,308.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V308.4z M358.6,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M358.6,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M358.6,396.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V396.9z M358.6,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M333,28.2l24.5,14.2v28.3L333,56.5V28.2z
|
||||
M333,57.7l24.5,14.2v28.3L333,86V57.7z M333,87.2l24.5,14.2v28.3L333,115.5V87.2z M333,116.7l24.5,14.2v28.3L333,145V116.7z
|
||||
M333,146.2l24.5,14.2v28.3L333,174.5V146.2z M333,175.7l24.5,14.2v28.3L333,204V175.7z M333,205.2l24.5,14.2v28.3L333,233.5V205.2z
|
||||
M333,234.7l24.5,14.2v28.3L333,263V234.7z M333,264.1l24.5,14.2v28.3L333,292.5V264.1z M333,293.6l24.5,14.2v28.3L333,322V293.6z
|
||||
M333,323.1l24.5,14.2v28.3L333,351.5V323.1z M333,352.6l24.5,14.2v28.3L333,381V352.6z M333,382.1l24.5,14.2v28.3L333,410.5V382.1z
|
||||
M333,411.6l24.5,14.2v28.3L333,440V411.6z M333,441.1l24.5,14.2v28.3L333,469.5V441.1z M307.5,13.4L332,27.6V56l-24.5-14.2V13.4z
|
||||
M307.5,42.9L332,57.1v28.3l-24.5-14.2V42.9z M307.5,72.4L332,86.6v28.3l-24.5-14.2V72.4z M307.5,101.9l24.5,14.2v28.3l-24.5-14.2
|
||||
V101.9z M307.5,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M307.5,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M307.5,190.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V190.4z M307.5,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M307.5,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M307.5,278.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V278.9z M307.5,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M307.5,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z
|
||||
M307.5,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M307.5,396.9L332,411v28.3l-24.5-14.2V396.9z M307.5,426.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V426.4z M281.9,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z M281.9,57.7l24.5,14.2v28.3L281.9,86V57.7z M281.9,87.2l24.5,14.2
|
||||
v28.3l-24.5-14.2V87.2z M281.9,116.7l24.5,14.2v28.3L281.9,145V116.7z M281.9,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M281.9,175.7
|
||||
l24.5,14.2v28.3L281.9,204V175.7z M281.9,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M281.9,234.7l24.5,14.2v28.3L281.9,263V234.7z
|
||||
M281.9,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M281.9,293.6l24.5,14.2v28.3L281.9,322V293.6z M281.9,323.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V323.1z M281.9,352.6l24.5,14.2v28.3L281.9,381V352.6z M281.9,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M281.9,411.6
|
||||
l24.5,14.2v28.3L281.9,440V411.6z M281.9,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M256.4,13.4l24.5,14.2V56l-24.5-14.2V13.4z
|
||||
M256.4,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M256.4,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z M256.4,101.9l24.5,14.2v28.3l-24.5-14.2
|
||||
V101.9z M256.4,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M256.4,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M256.4,190.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V190.4z M256.4,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M256.4,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M256.4,278.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V278.9z M256.4,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M256.4,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z
|
||||
M256.4,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M256.4,396.9l24.5,14.2v28.3l-24.5-14.2V396.9z M256.4,426.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V426.4z M230.9,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z M230.9,57.7l24.5,14.2v28.3L230.9,86V57.7z M230.9,87.2l24.5,14.2
|
||||
v28.3l-24.5-14.2V87.2z M230.9,116.7l24.5,14.2v28.3L230.9,145V116.7z M230.9,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M230.9,175.7
|
||||
l24.5,14.2v28.3L230.9,204V175.7z M230.9,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M230.9,234.7l24.5,14.2v28.3L230.9,263V234.7z
|
||||
M230.9,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M230.9,293.6l24.5,14.2v28.3L230.9,322V293.6z M230.9,323.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V323.1z M230.9,352.6l24.5,14.2v28.3L230.9,381V352.6z M230.9,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M230.9,411.6
|
||||
l24.5,14.2v28.3L230.9,440V411.6z M230.9,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M205.3,13.4l24.5,14.2V56l-24.5-14.2V13.4z
|
||||
M205.3,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M205.3,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z M205.3,101.9l24.5,14.2v28.3l-24.5-14.2
|
||||
V101.9z M205.3,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M205.3,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M205.3,190.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V190.4z M205.3,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M205.3,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M205.3,278.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V278.9z M205.3,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M205.3,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z
|
||||
M205.3,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M205.3,396.9l24.5,14.2v28.3l-24.5-14.2V396.9z M205.3,426.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V426.4z M179.8,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z M179.8,57.7l24.5,14.2v28.3L179.8,86V57.7z M179.8,87.2l24.5,14.2
|
||||
v28.3l-24.5-14.2V87.2z M179.8,116.7l24.5,14.2v28.3L179.8,145V116.7z M179.8,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M179.8,175.7
|
||||
l24.5,14.2v28.3L179.8,204V175.7z M179.8,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M179.8,234.7l24.5,14.2v28.3L179.8,263V234.7z
|
||||
M179.8,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M179.8,293.6l24.5,14.2v28.3L179.8,322V293.6z M179.8,323.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V323.1z M179.8,352.6l24.5,14.2v28.3L179.8,381V352.6z M179.8,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M179.8,411.6
|
||||
l24.5,14.2v28.3L179.8,440V411.6z M179.8,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M154.2,13.4l24.5,14.2V56l-24.5-14.2V13.4z
|
||||
M154.2,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M154.2,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z M154.2,101.9l24.5,14.2v28.3l-24.5-14.2
|
||||
V101.9z M154.2,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M154.2,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M154.2,190.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V190.4z M154.2,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M154.2,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M154.2,278.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V278.9z M154.2,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M154.2,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z
|
||||
M154.2,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M154.2,396.9l24.5,14.2v28.3l-24.5-14.2V396.9z M154.2,426.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V426.4z M128.7,28.2l24.5,14.2v28.3l-24.5-14.2V28.2z M128.7,57.7l24.5,14.2v28.3L128.7,86V57.7z M128.7,87.2l24.5,14.2
|
||||
v28.3l-24.5-14.2V87.2z M128.7,116.7l24.5,14.2v28.3L128.7,145V116.7z M128.7,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M128.7,175.7
|
||||
l24.5,14.2v28.3L128.7,204V175.7z M128.7,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M128.7,234.7l24.5,14.2v28.3L128.7,263V234.7z
|
||||
M128.7,264.1l24.5,14.2v28.3l-24.5-14.2V264.1z M128.7,293.6l24.5,14.2v28.3L128.7,322V293.6z M128.7,323.1l24.5,14.2v28.3
|
||||
l-24.5-14.2V323.1z M128.7,352.6l24.5,14.2v28.3L128.7,381V352.6z M128.7,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M128.7,411.6
|
||||
l24.5,14.2v28.3L128.7,440V411.6z M128.7,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M103.1,13.4l24.5,14.2V56l-24.5-14.2V13.4z
|
||||
M103.1,42.9l24.5,14.2v28.3l-24.5-14.2V42.9z M103.1,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z M103.1,101.9l24.5,14.2v28.3l-24.5-14.2
|
||||
V101.9z M103.1,131.4l24.5,14.2v28.3l-24.5-14.2V131.4z M103.1,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M103.1,190.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V190.4z M103.1,219.9l24.5,14.2v28.3l-24.5-14.2V219.9z M103.1,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M103.1,278.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V278.9z M103.1,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M103.1,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z
|
||||
M103.1,367.4l24.5,14.2v28.3l-24.5-14.2V367.4z M103.1,396.9l24.5,14.2v28.3l-24.5-14.2V396.9z M103.1,426.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V426.4z M77.6,28.2l24.5,14.2v28.3L77.6,56.5V28.2z M77.6,57.7l24.5,14.2v28.3L77.6,86V57.7z M77.6,87.2l24.5,14.2v28.3
|
||||
l-24.5-14.2V87.2z M77.6,116.7l24.5,14.2v28.3L77.6,145V116.7z M77.6,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M77.6,175.7l24.5,14.2
|
||||
v28.3L77.6,204V175.7z M77.6,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M77.6,234.7l24.5,14.2v28.3L77.6,263V234.7z M77.6,264.1
|
||||
l24.5,14.2v28.3l-24.5-14.2V264.1z M77.6,293.6l24.5,14.2v28.3L77.6,322V293.6z M77.6,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z
|
||||
M77.6,352.6l24.5,14.2v28.3L77.6,381V352.6z M77.6,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M77.6,411.6l24.5,14.2v28.3L77.6,440
|
||||
V411.6z M77.6,441.1l24.5,14.2v28.3l-24.5-14.2V441.1z M52.1,13.4l24.5,14.2V56L52.1,41.8V13.4z M52.1,42.9l24.5,14.2v28.3
|
||||
L52.1,71.3V42.9z M52.1,72.4l24.5,14.2v28.3l-24.5-14.2V72.4z M52.1,101.9l24.5,14.2v28.3l-24.5-14.2V101.9z M52.1,131.4l24.5,14.2
|
||||
v28.3l-24.5-14.2V131.4z M52.1,160.9l24.5,14.2v28.3l-24.5-14.2V160.9z M52.1,190.4l24.5,14.2v28.3l-24.5-14.2V190.4z M52.1,219.9
|
||||
l24.5,14.2v28.3l-24.5-14.2V219.9z M52.1,249.4l24.5,14.2v28.3l-24.5-14.2V249.4z M52.1,278.9l24.5,14.2v28.3l-24.5-14.2V278.9z
|
||||
M52.1,308.4l24.5,14.2v28.3l-24.5-14.2V308.4z M52.1,337.9l24.5,14.2v28.3l-24.5-14.2V337.9z M52.1,367.4l24.5,14.2v28.3
|
||||
l-24.5-14.2V367.4z M52.1,396.9L76.6,411v28.3l-24.5-14.2V396.9z M52.1,426.4l24.5,14.2v28.3l-24.5-14.2V426.4z M26.5,28.2
|
||||
l24.5,14.2v28.3L26.5,56.5V28.2z M26.5,57.7l24.5,14.2v28.3L26.5,86V57.7z M26.5,87.2l24.5,14.2v28.3l-24.5-14.2V87.2z M26.5,116.7
|
||||
l24.5,14.2v28.3L26.5,145V116.7z M26.5,146.2l24.5,14.2v28.3l-24.5-14.2V146.2z M26.5,175.7l24.5,14.2v28.3L26.5,204V175.7z
|
||||
M26.5,205.2l24.5,14.2v28.3l-24.5-14.2V205.2z M26.5,234.7l24.5,14.2v28.3L26.5,263V234.7z M26.5,264.1l24.5,14.2v28.3l-24.5-14.2
|
||||
V264.1z M26.5,293.6l24.5,14.2v28.3L26.5,322V293.6z M26.5,323.1l24.5,14.2v28.3l-24.5-14.2V323.1z M26.5,352.6l24.5,14.2v28.3
|
||||
L26.5,381V352.6z M26.5,382.1l24.5,14.2v28.3l-24.5-14.2V382.1z M26.5,411.6l24.5,14.2v28.3L26.5,440V411.6z M26.5,441.1l24.5,14.2
|
||||
v28.3l-24.5-14.2V441.1z M1,13.5l24.5,14.2V56L1,41.8V13.5z M1,43l24.5,14.2v28.3L1,71.3V43z M1,72.4l24.5,14.2v28.3L1,100.8V72.4z
|
||||
M1,101.9l24.5,14.2v28.3L1,130.3V101.9z M1,131.4l24.5,14.2v28.3L1,159.8V131.4z M1,160.9l24.5,14.2v28.3L1,189.3V160.9z M1,190.4
|
||||
l24.5,14.2v28.3L1,218.8V190.4z M1,219.9l24.5,14.2v28.3L1,248.3V219.9z M1,249.4l24.5,14.2v28.3L1,277.8V249.4z M1,278.9l24.5,14.2
|
||||
v28.3L1,307.2V278.9z M1,308.4l24.5,14.2v28.3L1,336.7V308.4z M1,337.9l24.5,14.2v28.3L1,366.2V337.9z M1,367.4l24.5,14.2v28.3
|
||||
L1,395.7V367.4z M1,396.9L25.5,411v28.3L1,425.2V396.9z M1,426.4l24.5,14.2v28.3L1,454.7V426.4z"/>
|
||||
<g>
|
||||
<polygon class="st1" points="178.9,115.2 281.8,174.2 281.8,292.2 178.9,232.8 "/>
|
||||
<polygon class="st2" points="230.6,86.5 230.6,144.8 281.8,174.2 281.8,233.7 333.5,263.5 333.5,145.5 "/>
|
||||
<polygon class="st3" points="281.9,56.5 281.9,116 333.5,145.5 333.5,204.2 384.8,233.9 384.8,116.5 "/>
|
||||
<g>
|
||||
<polygon class="st4" points="128.2,145.1 230.4,203.4 230.4,411.1 128.2,351.1 "/>
|
||||
<polygon class="st4" points="128.2,350.8 141,357.8 141,372.7 128.2,365.2 "/>
|
||||
<polygon class="st5" points="179.5,376 192.3,383 192.3,397.8 179.5,390.3 "/>
|
||||
<polygon class="st6" points="217.9,403.8 230.7,410.8 230.7,446.8 217.9,439.3 "/>
|
||||
<polygon class="st6" points="159.9,377.5 172.7,384.5 172.7,420.4 159.9,412.9 "/>
|
||||
<polygon class="st4" points="166.5,403 179.3,410 179.3,445.9 166.5,438.4 "/>
|
||||
<polygon class="st4" points="204.9,420.1 217.7,427.1 217.7,463 204.9,455.5 "/>
|
||||
<polygon class="st4" points="141.2,402.8 153.9,409.8 153.9,424.6 141.2,417.1 "/>
|
||||
<polygon class="st4" points="192.6,404.8 205.4,411.8 205.4,426.6 192.6,419.1 "/>
|
||||
<polygon class="st5" points="128.2,403.8 141,410.8 141,449 128.2,441.5 "/>
|
||||
<polygon class="st5" points="141.2,356.9 153.9,363.9 153.9,402.1 141.2,394.6 "/>
|
||||
</g>
|
||||
<line class="st7" x1="233.8" y1="306.1" x2="225.2" y2="301.2"/>
|
||||
<rect x="233.8" y="302.6" class="st8" width="35" height="14"/>
|
||||
<line class="st7" x1="288.1" y1="276.6" x2="279.5" y2="271.7"/>
|
||||
<rect x="288.1" y="274.1" class="st8" width="79.9" height="14"/>
|
||||
<g>
|
||||
<path d="M298.9,277.5h1.6l-2.4,8h-2.2l-2.4-8h1.6l1.9,6.7L298.9,277.5z"/>
|
||||
<path d="M303.1,285.4h-1.5v-8h1.5V285.4z"/>
|
||||
<path d="M309.7,285.4l-1.8-2.6h-1.4v2.6h-1.5v-8h3.3c1.9,0,2.5,0.8,2.5,2.2v1c0,1-0.4,1.6-1.2,1.9l2,2.9H309.7z M308.1,278.8h-1.7
|
||||
v2.7h1.7c0.8,0,1.1-0.3,1.1-1v-0.8C309.2,279.1,308.9,278.8,308.1,278.8z"/>
|
||||
<path d="M313.9,278.8h-2.2v-1.3h6v1.3h-2.2v6.7h-1.5V278.8z"/>
|
||||
<path d="M324.7,277.5v5.7c0,1.3-0.7,2.4-3,2.4c-2.2,0-3-1.2-3-2.4v-5.7h1.5v5.6c0,0.8,0.4,1.2,1.4,1.2s1.4-0.4,1.4-1.2v-5.6H324.7
|
||||
z"/>
|
||||
<path d="M330.7,283.8h-3l-0.5,1.7h-1.6l2.5-8h2.1l2.5,8h-1.6L330.7,283.8z M328.1,282.5h2.2l-1.1-3.8L328.1,282.5z"/>
|
||||
<path d="M335.5,284.1h3.3v1.3H334v-8h1.5V284.1z"/>
|
||||
<path d="M342.6,285.4v-8h3.1c1.5,0,2.1,0.6,2.1,1.7v0.8c0,0.7-0.3,1-0.9,1.3c0.7,0.2,1.2,0.7,1.2,1.5v0.9c0,1.1-0.7,1.8-2.2,1.8
|
||||
H342.6z M346.4,279.3c0-0.4-0.2-0.6-0.8-0.6h-1.5v2.1h1.4c0.6,0,0.8-0.3,0.8-0.7V279.3z M346.6,282.8c0-0.5-0.2-0.8-0.8-0.8h-1.7
|
||||
v2.2h1.5c0.7,0,1-0.2,1-0.8V282.8z"/>
|
||||
<path d="M355.4,283.1c0,1.3-0.8,2.5-3,2.5s-3-1.1-3-2.5v-3.3c0-1.3,0.8-2.5,3-2.5s3,1.1,3,2.5V283.1z M350.9,283
|
||||
c0,0.8,0.4,1.2,1.5,1.2c1.1,0,1.5-0.5,1.5-1.2v-3.1c0-0.8-0.4-1.2-1.5-1.2c-1.1,0-1.5,0.5-1.5,1.2V283z"/>
|
||||
<path d="M363,285.4h-1.6l-1.7-2.8l-1.7,2.8h-1.6l2.5-4l-2.4-4h1.6l1.7,2.8l1.7-2.8h1.6l-2.4,4L363,285.4z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M244.4,312.1h-3l-0.5,1.7h-1.6l2.5-8h2.1l2.5,8h-1.6L244.4,312.1z M241.8,310.8h2.2l-1.1-3.8L241.8,310.8z"/>
|
||||
<path d="M254.4,312l1.5-6.2h1.5l-2,8h-2l-1.5-6.4l-1.5,6.4h-2l-2-8h1.5l1.5,6.2l1.5-6.2h2L254.4,312z"/>
|
||||
<path d="M260.7,313.9c-0.9,0-2-0.2-2.5-0.5l0.3-1.2c0.7,0.2,1.5,0.4,2.3,0.4c1.1,0,1.3-0.2,1.3-1c0-0.9,0-1-1.5-1.3
|
||||
c-1.9-0.4-2.2-0.8-2.2-2.5c0-1.5,0.7-2.2,2.7-2.2c0.7,0,1.5,0.1,2.3,0.3l-0.2,1.3c-0.7-0.1-1.4-0.2-2.1-0.2c-1,0-1.2,0.2-1.2,0.9
|
||||
c0,0.9,0,0.9,1.4,1.3c2.1,0.5,2.3,0.9,2.3,2.5C263.5,313.1,263,313.9,260.7,313.9z"/>
|
||||
</g>
|
||||
<line class="st7" x1="336.6" y1="245.9" x2="328.1" y2="240.9"/>
|
||||
<rect x="336.6" y="242.4" class="st8" width="60.7" height="14"/>
|
||||
<g>
|
||||
<path d="M347.6,245h1.6l-2.4,8h-2.2l-2.4-8h1.6l1.9,6.7L347.6,245z"/>
|
||||
<path d="M355.1,252h-1.9l-1.5-4.1l-0.1,5.2H350l0.4-8h1.7l2.1,5.7l2.1-5.7h1.7l0.4,8h-1.5l-0.1-5.2L355.1,252z"/>
|
||||
<path d="M367.2,251.2l1.5-6.2h1.5l-2,8h-2l-1.5-6.4l-1.5,6.4h-2l-2-8h1.5l1.5,6.2l1.5-6.2h2L367.2,251.2z"/>
|
||||
<path d="M375.2,251.3h-3l-0.5,1.7h-1.6l2.5-8h2.1l2.5,8h-1.6L375.2,251.3z M372.6,250h2.2l-1.1-3.8L372.6,250z"/>
|
||||
<path d="M383.3,253l-1.8-2.6H380v2.6h-1.5v-8h3.3c1.9,0,2.5,0.8,2.5,2.2v1c0,1-0.4,1.6-1.2,1.9l2,2.9H383.3z M381.7,246.3H380v2.7
|
||||
h1.7c0.8,0,1.1-0.3,1.1-1v-0.8C382.8,246.6,382.5,246.3,381.7,246.3z"/>
|
||||
<path d="M386.3,245h4.9v1.3h-3.4v1.9h3.1v1.3h-3.1v2.1h3.4v1.3h-4.9V245z"/>
|
||||
</g>
|
||||
<line class="st7" x1="387.1" y1="214.1" x2="378.5" y2="209.2"/>
|
||||
<rect x="387.1" y="210.6" class="st8" width="75.3" height="14"/>
|
||||
<g>
|
||||
<path d="M398.8,219.9c0,1.3-0.8,2.5-3,2.5s-3-1.1-3-2.5v-3.3c0-1.3,0.8-2.5,3-2.5s3,1.1,3,2.5V219.9z M394.2,219.8
|
||||
c0,0.8,0.4,1.2,1.5,1.2c1.1,0,1.5-0.5,1.5-1.2v-3.1c0-0.8-0.4-1.2-1.5-1.2c-1.1,0-1.5,0.5-1.5,1.2V219.8z"/>
|
||||
<path d="M400.4,214.2h3.1c1.8,0,2.5,0.8,2.5,2.2v1.1c0,1.4-0.7,2.1-2.6,2.1h-1.5v2.6h-1.5V214.2z M403.4,215.6h-1.5v2.7h1.5
|
||||
c0.9,0,1.1-0.3,1.1-1v-0.8C404.5,215.9,404.3,215.6,403.4,215.6z"/>
|
||||
<path d="M407.3,214.2h4.9v1.3h-3.4v1.9h3.1v1.3h-3.1v2.1h3.4v1.3h-4.9V214.2z"/>
|
||||
<path d="M415.2,216.2v6.1h-1.5v-8h2l3,6.1v-6.1h1.5v8h-2L415.2,216.2z"/>
|
||||
<path d="M426.8,222.4c-0.9,0-2-0.2-2.5-0.5l0.3-1.2c0.7,0.2,1.5,0.4,2.3,0.4c1.1,0,1.3-0.2,1.3-1c0-0.9,0-1-1.5-1.3
|
||||
c-1.9-0.4-2.2-0.8-2.2-2.5c0-1.5,0.7-2.2,2.7-2.2c0.7,0,1.5,0.1,2.3,0.3l-0.2,1.3c-0.7-0.1-1.4-0.2-2.1-0.2c-1,0-1.2,0.2-1.2,0.9
|
||||
c0,0.9,0,0.9,1.4,1.3c2.1,0.5,2.3,0.9,2.3,2.5C429.6,221.6,429.1,222.4,426.8,222.4z"/>
|
||||
<path d="M432.7,215.6h-2.2v-1.3h6v1.3h-2.2v6.7h-1.5V215.6z"/>
|
||||
<path d="M441.4,220.6h-3l-0.5,1.7h-1.6l2.5-8h2.1l2.5,8h-1.6L441.4,220.6z M438.8,219.3h2.2l-1.1-3.8L438.8,219.3z"/>
|
||||
<path d="M444.3,216.4c0-1.5,0.9-2.3,2.8-2.3c0.7,0,1.5,0.1,2.2,0.3l-0.2,1.3c-0.6-0.1-1.4-0.2-2-0.2c-1,0-1.4,0.4-1.4,1.2v3.1
|
||||
c0,0.9,0.3,1.2,1.4,1.2c0.6,0,1.3-0.1,2-0.2l0.2,1.3c-0.7,0.2-1.4,0.3-2.2,0.3c-2,0-2.8-0.9-2.8-2.3V216.4z"/>
|
||||
<path d="M452.2,222.2h-1.5v-8h1.5V222.2z M454.1,218.2l2.7,4h-1.7l-2.6-4l2.5-3.9h1.7L454.1,218.2z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 96 KiB |
|
@ -0,0 +1,138 @@
|
|||
<svg width="91px" height="36px" viewBox="0 0 91 36" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<path d="M1.018,1.732 C0.477,2.336 0.208,3.13 0.208,4.113 C0.208,5.074 0.469,5.852 0.988,6.444 C1.509,7.038 2.19,7.335 3.031,7.335 C3.67,7.335 4.224,7.162 4.698,6.816 C5.168,6.47 5.486,6.033 5.648,5.505 L4.755,5.324 C4.433,6.132 3.88,6.537 3.096,6.537 C2.661,6.537 2.25,6.375 1.859,6.049 C1.468,5.723 1.273,5.092 1.273,4.16 L5.752,4.16 C5.74,3.051 5.49,2.216 4.999,1.659 C4.509,1.103 3.862,0.824 3.058,0.824 C2.239,0.824 1.56,1.125 1.018,1.732 Z M1.877,2.066 C2.207,1.724 2.61,1.553 3.086,1.553 C3.44,1.553 3.741,1.648 3.994,1.838 C4.246,2.027 4.425,2.255 4.531,2.523 C4.637,2.792 4.694,3.1 4.702,3.446 L1.317,3.446 C1.358,2.868 1.543,2.408 1.877,2.066 Z" id="path-1"></path>
|
||||
<path d="M0.016,0.835 L0.016,9.162 L0.478,9.162 L0.822,8.143 C1.268,8.936 1.911,9.333 2.75,9.333 C3.501,9.333 4.111,9.022 4.582,8.401 C5.052,7.78 5.286,7.011 5.286,6.093 C5.286,5.03 5.048,4.218 4.571,3.661 C4.091,3.103 3.501,2.824 2.792,2.824 C2.021,2.824 1.417,3.223 0.977,4.023 L0.977,0.835 L0.016,0.835 Z M1.561,8.124 C1.217,7.837 1.022,7.377 0.977,6.744 L0.977,5.358 C1.038,4.847 1.231,4.428 1.553,4.106 C1.879,3.783 2.241,3.62 2.644,3.62 C3.157,3.62 3.558,3.848 3.847,4.302 C4.136,4.756 4.28,5.38 4.28,6.174 C4.28,6.913 4.13,7.493 3.831,7.917 C3.531,8.34 3.138,8.552 2.65,8.552 C2.267,8.552 1.905,8.409 1.561,8.124 Z" id="path-3"></path>
|
||||
<path d="M1.605,1.345 C1.194,1.693 0.991,2.127 0.991,2.644 C0.991,3.112 1.141,3.488 1.441,3.773 C1.742,4.058 2.147,4.25 2.658,4.347 L3.956,4.596 C4.663,4.724 5.015,5.031 5.015,5.514 C5.015,5.837 4.876,6.092 4.599,6.271 C4.323,6.448 3.985,6.537 3.586,6.537 C2.501,6.537 1.858,6.148 1.654,5.375 L0.736,5.564 C1.082,6.743 1.986,7.335 3.447,7.335 C4.227,7.335 4.85,7.16 5.318,6.81 C5.788,6.462 6.02,6.006 6.02,5.438 C6.02,4.447 5.391,3.836 4.133,3.608 L2.932,3.389 C2.293,3.271 1.972,2.986 1.972,2.532 C1.972,2.243 2.098,2.021 2.348,1.86 C2.599,1.701 2.918,1.62 3.309,1.62 C4.095,1.62 4.614,1.941 4.866,2.581 L5.745,2.391 C5.432,1.347 4.606,0.824 3.266,0.824 C2.57,0.824 2.019,0.999 1.605,1.345 Z" id="path-5"></path>
|
||||
<path d="M1.4,1.732 C0.857,2.336 0.588,3.13 0.588,4.113 C0.588,5.074 0.848,5.852 1.367,6.444 C1.889,7.038 2.57,7.335 3.413,7.335 C4.05,7.335 4.606,7.162 5.078,6.816 C5.55,6.47 5.866,6.033 6.028,5.505 L5.135,5.324 C4.813,6.132 4.262,6.537 3.476,6.537 C3.041,6.537 2.629,6.375 2.239,6.049 C1.848,5.723 1.652,5.092 1.652,4.16 L6.132,4.16 C6.122,3.051 5.87,2.216 5.379,1.659 C4.891,1.103 4.241,0.824 3.437,0.824 C2.619,0.824 1.939,1.125 1.4,1.732 Z M2.257,2.066 C2.589,1.724 2.992,1.553 3.466,1.553 C3.82,1.553 4.123,1.648 4.376,1.838 C4.626,2.027 4.805,2.255 4.913,2.523 C5.017,2.792 5.074,3.1 5.082,3.446 L1.699,3.446 C1.74,2.868 1.925,2.408 2.257,2.066 Z" id="path-7"></path>
|
||||
<path d="M1.904,1.124 C1.605,1.323 1.306,1.758 1.011,2.432 L1.011,0.995 L0.166,0.995 L0.166,7.162 L1.129,7.162 L1.129,3.897 C1.153,3.258 1.341,2.741 1.689,2.351 C2.039,1.958 2.478,1.762 3.005,1.762 L3.201,1.762 L3.201,0.847 C3.046,0.83 2.92,0.824 2.822,0.824 C2.509,0.824 2.204,0.924 1.904,1.124 Z" id="path-9"></path>
|
||||
<path d="M1.547,1.756 C1.077,2.377 0.841,3.157 0.841,4.095 C0.841,4.999 1.065,5.764 1.51,6.393 C1.954,7.02 2.604,7.335 3.454,7.335 C4.081,7.335 4.604,7.142 5.023,6.755 C5.443,6.368 5.714,5.837 5.836,5.155 L4.971,5.003 C4.759,6.026 4.256,6.537 3.464,6.537 C2.952,6.537 2.555,6.319 2.272,5.882 C1.989,5.444 1.848,4.832 1.848,4.042 C1.848,3.326 1.991,2.744 2.276,2.293 C2.559,1.846 2.966,1.62 3.495,1.62 C4.317,1.62 4.808,2.129 4.971,3.148 L5.836,2.983 C5.738,2.347 5.488,1.828 5.081,1.427 C4.675,1.025 4.138,0.824 3.466,0.824 C2.656,0.824 2.017,1.133 1.547,1.756 Z" id="path-11"></path>
|
||||
<path d="M1.523,1.732 C0.982,2.336 0.711,3.13 0.711,4.113 C0.711,5.074 0.971,5.852 1.492,6.444 C2.011,7.038 2.693,7.335 3.536,7.335 C4.173,7.335 4.729,7.162 5.201,6.816 C5.673,6.47 5.988,6.033 6.153,5.505 L5.258,5.324 C4.936,6.132 4.385,6.537 3.601,6.537 C3.163,6.537 2.752,6.375 2.362,6.049 C1.973,5.723 1.777,5.092 1.777,4.16 L6.255,4.16 C6.245,3.051 5.995,2.216 5.504,1.659 C5.014,1.103 4.366,0.824 3.56,0.824 C2.744,0.824 2.064,1.125 1.523,1.732 Z M2.38,2.066 C2.71,1.724 3.113,1.553 3.591,1.553 C3.945,1.553 4.246,1.648 4.499,1.838 C4.751,2.027 4.93,2.255 5.034,2.523 C5.14,2.792 5.199,3.1 5.207,3.446 L1.822,3.446 C1.863,2.868 2.048,2.408 2.38,2.066 Z" id="path-13"></path>
|
||||
<path d="M1.67,1.345 C1.259,1.693 1.053,2.127 1.053,2.644 C1.053,3.112 1.204,3.488 1.505,3.773 C1.806,4.058 2.211,4.25 2.72,4.347 L4.021,4.596 C4.725,4.724 5.079,5.031 5.079,5.514 C5.079,5.837 4.94,6.092 4.662,6.271 C4.387,6.448 4.047,6.537 3.648,6.537 C2.565,6.537 1.92,6.148 1.716,5.375 L0.801,5.564 C1.147,6.743 2.05,7.335 3.512,7.335 C4.289,7.335 4.914,7.16 5.382,6.81 C5.85,6.462 6.084,6.006 6.084,5.438 C6.084,4.447 5.455,3.836 4.198,3.608 L2.997,3.389 C2.356,3.271 2.036,2.986 2.036,2.532 C2.036,2.243 2.162,2.021 2.413,1.86 C2.663,1.701 2.982,1.62 3.373,1.62 C4.159,1.62 4.676,1.941 4.928,2.581 L5.81,2.391 C5.496,1.347 4.668,0.824 3.331,0.824 C2.634,0.824 2.081,0.999 1.67,1.345 Z" id="path-15"></path>
|
||||
<path d="M1.503,0.956 C1.297,0.956 1.128,1.104 1.126,1.331 L1.126,2.812 C1.128,3.034 1.297,3.185 1.511,3.185 L4.983,3.187 L0.996,8.902 C0.752,9.268 0.748,9.682 0.748,9.922 L0.748,11.424 C0.748,11.644 0.99,11.892 1.222,11.768 C3.483,10.567 6.196,10.683 8.242,11.753 C8.492,11.886 8.73,11.633 8.73,11.416 L8.73,9.834 C8.71,9.621 8.641,9.403 8.378,9.256 C7.216,8.605 5.867,8.414 4.588,8.444 L8.03,3.533 C8.35,3.091 8.529,2.812 8.531,2.601 L8.531,1.329 C8.531,1.108 8.36,0.954 8.148,0.954 L1.503,0.956 Z" id="path-17"></path>
|
||||
<path d="M8.928,2.684 C8.362,1.375 7.569,0.765 6.305,0.765 C5.059,0.765 4.135,1.375 3.644,2.684 L3.606,2.684 L3.606,1.331 C3.594,1.141 3.435,0.993 3.237,0.982 L1.357,0.982 C1.141,0.982 0.966,1.149 0.966,1.357 L0.966,11.725 C0.98,11.91 1.135,12.053 1.326,12.065 L3.347,12.065 C3.563,12.065 3.738,11.9 3.738,11.692 L3.738,6.197 C3.738,4.998 3.681,3.339 5.136,3.339 C6.569,3.339 6.38,5.041 6.38,6.197 L6.382,11.694 C6.382,11.892 6.543,12.053 6.744,12.065 L8.765,12.065 C8.979,12.065 9.154,11.9 9.154,11.692 L9.154,6.197 C9.154,5.609 9.136,4.735 9.343,4.212 C9.551,3.687 10.06,3.36 10.55,3.36 C11.137,3.36 11.588,3.557 11.739,4.255 C11.835,4.67 11.796,5.761 11.796,6.197 L11.796,11.694 C11.796,11.892 11.957,12.053 12.158,12.065 L14.179,12.065 C14.393,12.065 14.568,11.9 14.568,11.692 L14.57,5.149 C14.57,4.038 14.702,2.771 14.061,1.898 C13.493,1.113 12.569,0.765 11.721,0.765 C10.532,0.765 9.419,1.375 8.928,2.684 Z" id="path-19"></path>
|
||||
<path d="M0.901,6.502 C0.901,9.71 2.491,12.285 5.412,12.285 C8.22,12.285 9.997,9.775 9.997,6.612 C9.997,3.339 8.387,0.765 5.412,0.765 C2.509,0.765 0.901,3.272 0.901,6.502 Z M3.857,6.441 C3.857,5.177 3.952,3.148 5.43,3.148 C6.067,3.148 6.517,3.431 6.741,4.151 C7.003,4.98 7.04,6.028 7.04,6.901 C7.04,8.232 6.967,10.146 5.412,10.146 C3.838,10.146 3.857,7.707 3.857,6.441 Z" id="path-21"></path>
|
||||
<path d="M3.587,2.859 L3.548,2.859 L3.548,1.273 C3.512,1.113 3.365,0.991 3.19,0.982 L1.315,0.982 C1.11,0.982 0.943,1.133 0.927,1.322 L0.929,11.694 C0.929,11.892 1.089,12.053 1.293,12.065 L3.306,12.065 C3.522,12.065 3.697,11.9 3.699,11.692 L3.699,6.109 C3.699,5.411 3.737,4.778 4.02,4.146 C4.246,3.645 4.7,3.317 5.189,3.317 C6.587,3.317 6.455,4.976 6.455,6.109 L6.455,11.739 C6.477,11.917 6.628,12.055 6.815,12.065 L8.84,12.065 C9.042,12.065 9.206,11.922 9.229,11.739 L9.229,5.216 C9.229,4.212 9.229,2.816 8.7,1.986 C8.134,1.092 7.246,0.765 6.341,0.765 C4.944,0.765 4.153,1.44 3.587,2.859 Z" id="path-23"></path>
|
||||
<path d="M0.441,3.756 C0.394,4.009 0.579,4.143 0.744,4.18 L2.704,4.392 C2.887,4.381 3.019,4.202 3.054,4.019 C3.223,3.203 3.907,2.806 4.68,2.806 C5.095,2.806 5.568,2.958 5.814,3.333 C6.097,3.747 6.06,4.316 6.06,4.797 L6.06,5.059 C4.886,5.191 3.355,5.277 2.258,5.759 C0.992,6.307 0.103,7.42 0.103,9.061 C0.103,11.159 1.426,12.209 3.127,12.209 C4.566,12.209 5.352,11.87 6.461,10.742 C6.828,11.271 6.948,11.53 7.619,12.087 C7.77,12.168 7.963,12.161 8.098,12.041 L8.102,12.044 C8.507,11.687 9.237,11.049 9.651,10.703 C9.818,10.569 9.789,10.349 9.659,10.166 C9.29,9.655 8.898,9.24 8.898,8.293 L8.898,5.146 C8.898,3.813 8.991,2.588 8.006,1.668 C7.233,0.925 5.946,0.665 4.961,0.665 C3.04,0.665 0.893,1.381 0.441,3.756 Z M3.052,8.71 C3.052,6.991 4.597,6.677 6.06,6.677 L6.06,7.115 C6.06,7.902 6.079,8.556 5.682,9.256 C5.36,9.826 4.849,10.176 4.281,10.176 C3.508,10.176 3.052,9.586 3.052,8.71 Z" id="path-25"></path>
|
||||
<path d="M1.173,3.756 C1.124,4.009 1.307,4.143 1.474,4.18 L3.432,4.392 C3.617,4.381 3.747,4.202 3.784,4.019 C3.953,3.203 4.637,2.806 5.41,2.806 C5.825,2.806 6.298,2.958 6.544,3.333 C6.827,3.747 6.79,4.316 6.79,4.797 L6.79,5.059 C5.616,5.191 4.083,5.277 2.988,5.759 C1.72,6.307 0.833,7.42 0.833,9.061 C0.833,11.159 2.156,12.209 3.857,12.209 C5.294,12.209 6.082,11.87 7.191,10.742 C7.557,11.271 7.677,11.53 8.349,12.087 C8.5,12.168 8.693,12.161 8.827,12.041 L8.832,12.044 C9.234,11.687 9.969,11.049 10.382,10.703 C10.545,10.569 10.517,10.349 10.389,10.166 C10.02,9.655 9.625,9.24 9.625,8.293 L9.625,5.146 C9.625,3.813 9.719,2.588 8.738,1.668 C7.96,0.925 6.674,0.665 5.693,0.665 C3.768,0.665 1.62,1.381 1.173,3.756 Z M3.782,8.71 C3.782,6.991 5.327,6.677 6.79,6.677 L6.79,7.115 C6.79,7.902 6.808,8.556 6.409,9.256 C6.09,9.826 5.579,10.176 5.011,10.176 C4.236,10.176 3.782,9.586 3.782,8.71 Z" id="path-27"></path>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<polygon id="Fill-1" fill="#171D23" points="6.56 32.147 11.848 34.041 11.848 26.199 6.56 24.4"></polygon>
|
||||
<polygon id="Fill-2" fill="#171D23" points="12.8181 26.1992 12.8181 34.0402 18.1081 32.1472 18.1081 24.4002"></polygon>
|
||||
<polygon id="Fill-3" fill="#171D23" points="7.1038 23.8188 12.4568 25.5958 17.4188 23.9098 12.4568 22.3128"></polygon>
|
||||
<polygon id="Fill-4" fill="#171D23" points="0.262 21.3218 5.552 23.2188 5.552 15.3778 0.262 13.5748"></polygon>
|
||||
<polygon id="Fill-5" fill="#171D23" points="6.5206 15.3774 6.5206 23.2184 11.8106 21.3214 11.8106 13.5744"></polygon>
|
||||
<polygon id="Fill-6" fill="#171D23" points="0.8054 12.9946 6.1584 14.7736 11.1204 13.0906 6.1584 11.4896"></polygon>
|
||||
<polygon id="Fill-7" fill="#171D23" points="12.6022 21.3218 17.8922 23.2188 17.8922 15.3778 12.6022 13.5748"></polygon>
|
||||
<polygon id="Fill-8" fill="#171D23" points="18.8622 15.3774 18.8622 23.2184 24.1512 21.3214 24.1512 13.5744"></polygon>
|
||||
<polygon id="Fill-9" fill="#171D23" points="13.1482 12.9946 18.5002 14.7736 23.4632 13.0906 18.5002 11.4896"></polygon>
|
||||
<polygon id="Fill-10" fill="#171D23" points="18.8998 10.501 24.1898 12.395 24.1898 4.553 18.8998 2.754"></polygon>
|
||||
<polygon id="Fill-11" fill="#171D23" points="25.1588 4.5532 25.1588 12.3952 30.4488 10.5012 30.4488 2.7542"></polygon>
|
||||
<polygon id="Fill-12" fill="#171D23" points="19.4435 2.1738 24.7965 3.9508 29.7605 2.2658 24.7965 0.6668"></polygon>
|
||||
<polygon id="Fill-13" fill="#171D23" points="31.2405 10.501 36.5305 12.395 36.5305 4.553 31.2405 2.754"></polygon>
|
||||
<polygon id="Fill-14" fill="#171D23" points="37.4996 4.5532 37.4996 12.3952 42.7886 10.5012 42.7886 2.7542"></polygon>
|
||||
<polygon id="Fill-15" fill="#171D23" points="31.7839 2.1738 37.1369 3.9508 42.1009 2.2658 37.1369 0.6668"></polygon>
|
||||
<polygon id="Fill-16" fill="#171D23" points="33.0646 28.9951 31.6816 33.6051 30.2896 28.9951 29.5856 28.9951 28.3046 33.5901 26.9606 28.9951 26.0046 28.9951 27.8516 35.1621 28.6396 35.1621 29.9066 30.5831 31.2906 35.1621 32.0626 35.1621 33.8406 28.9951"></polygon>
|
||||
<g id="Group-19" transform="translate(34.000000, 28.000000)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-18"></g>
|
||||
<polygon id="Fill-17" fill="#171D23" mask="url(#mask-2)" points="-4.793 12.334 10.753 12.334 10.753 -4.176 -4.793 -4.176"></polygon>
|
||||
</g>
|
||||
<g id="Group-22" transform="translate(41.000000, 26.000000)">
|
||||
<mask id="mask-4" fill="white">
|
||||
<use xlink:href="#path-3"></use>
|
||||
</mask>
|
||||
<g id="Clip-21"></g>
|
||||
<polygon id="Fill-20" fill="#171D23" mask="url(#mask-4)" points="-4.984 14.333 10.286 14.333 10.286 -4.165 -4.984 -4.165"></polygon>
|
||||
</g>
|
||||
<g id="Group-25" transform="translate(48.000000, 28.000000)">
|
||||
<mask id="mask-6" fill="white">
|
||||
<use xlink:href="#path-5"></use>
|
||||
</mask>
|
||||
<g id="Clip-24"></g>
|
||||
<polygon id="Fill-23" fill="#171D23" mask="url(#mask-6)" points="-4.264 12.334 11.02 12.334 11.02 -4.177 -4.264 -4.177"></polygon>
|
||||
</g>
|
||||
<g id="Group-28" transform="translate(54.000000, 28.000000)">
|
||||
<mask id="mask-8" fill="white">
|
||||
<use xlink:href="#path-7"></use>
|
||||
</mask>
|
||||
<g id="Clip-27"></g>
|
||||
<polygon id="Fill-26" fill="#171D23" mask="url(#mask-8)" points="-4.412 12.334 11.133 12.334 11.133 -4.176 -4.412 -4.176"></polygon>
|
||||
</g>
|
||||
<g id="Group-31" transform="translate(61.000000, 28.000000)">
|
||||
<mask id="mask-10" fill="white">
|
||||
<use xlink:href="#path-9"></use>
|
||||
</mask>
|
||||
<g id="Clip-30"></g>
|
||||
<polygon id="Fill-29" fill="#171D23" mask="url(#mask-10)" points="-4.833 12.162 8.201 12.162 8.201 -4.176 -4.833 -4.176"></polygon>
|
||||
</g>
|
||||
<polygon id="Fill-32" fill="#171D23" points="69.3203 28.9951 67.6193 34.0091 65.9073 28.9951 64.8433 28.9951 67.0463 35.1621 68.0413 35.1621 70.1723 28.9951"></polygon>
|
||||
<path d="M70.941,27.899 L71.97,27.899 L71.97,26.836 L70.941,26.836 L70.941,27.899 Z M70.987,35.164 L71.947,35.164 L71.947,28.995 L70.987,28.995 L70.987,35.164 Z" id="Fill-33" fill="#171D23"></path>
|
||||
<g id="Group-36" transform="translate(72.000000, 28.000000)">
|
||||
<mask id="mask-12" fill="white">
|
||||
<use xlink:href="#path-11"></use>
|
||||
</mask>
|
||||
<g id="Clip-35"></g>
|
||||
<polygon id="Fill-34" fill="#171D23" mask="url(#mask-12)" points="-4.158 12.334 10.836 12.334 10.836 -4.176 -4.158 -4.176"></polygon>
|
||||
</g>
|
||||
<g id="Group-39" transform="translate(78.000000, 28.000000)">
|
||||
<mask id="mask-14" fill="white">
|
||||
<use xlink:href="#path-13"></use>
|
||||
</mask>
|
||||
<g id="Clip-38"></g>
|
||||
<polygon id="Fill-37" fill="#171D23" mask="url(#mask-14)" points="-4.289 12.334 11.256 12.334 11.256 -4.176 -4.289 -4.176"></polygon>
|
||||
</g>
|
||||
<g id="Group-42" transform="translate(84.000000, 28.000000)">
|
||||
<mask id="mask-16" fill="white">
|
||||
<use xlink:href="#path-15"></use>
|
||||
</mask>
|
||||
<g id="Clip-41"></g>
|
||||
<polygon id="Fill-40" fill="#171D23" mask="url(#mask-16)" points="-4.2 12.334 11.084 12.334 11.084 -4.177 -4.2 -4.177"></polygon>
|
||||
</g>
|
||||
<g id="Group-45" transform="translate(62.000000, 13.000000)">
|
||||
<mask id="mask-18" fill="white">
|
||||
<use xlink:href="#path-17"></use>
|
||||
</mask>
|
||||
<g id="Clip-44"></g>
|
||||
<polygon id="Fill-43" fill="#171D23" mask="url(#mask-18)" points="-4.252 16.8 13.73 16.8 13.73 -4.046 -4.252 -4.046"></polygon>
|
||||
</g>
|
||||
<g id="Group-48" transform="translate(36.000000, 13.000000)">
|
||||
<mask id="mask-20" fill="white">
|
||||
<use xlink:href="#path-19"></use>
|
||||
</mask>
|
||||
<g id="Clip-47"></g>
|
||||
<polygon id="Fill-46" fill="#171D23" mask="url(#mask-20)" points="-4.035 17.065 19.581 17.065 19.581 -4.236 -4.035 -4.236"></polygon>
|
||||
</g>
|
||||
<g id="Group-51" transform="translate(70.000000, 13.000000)">
|
||||
<mask id="mask-22" fill="white">
|
||||
<use xlink:href="#path-21"></use>
|
||||
</mask>
|
||||
<g id="Clip-50"></g>
|
||||
<polygon id="Fill-49" fill="#171D23" mask="url(#mask-22)" points="-4.099 17.284 14.998 17.284 14.998 -4.237 -4.099 -4.237"></polygon>
|
||||
</g>
|
||||
<g id="Group-54" transform="translate(81.000000, 13.000000)">
|
||||
<mask id="mask-24" fill="white">
|
||||
<use xlink:href="#path-23"></use>
|
||||
</mask>
|
||||
<g id="Clip-53"></g>
|
||||
<polygon id="Fill-52" fill="#171D23" mask="url(#mask-24)" points="-4.073 17.065 14.229 17.065 14.229 -4.236 -4.073 -4.236"></polygon>
|
||||
</g>
|
||||
<g id="Group-57" transform="translate(52.000000, 13.000000)">
|
||||
<mask id="mask-26" fill="white">
|
||||
<use xlink:href="#path-25"></use>
|
||||
</mask>
|
||||
<g id="Clip-56"></g>
|
||||
<polygon id="Fill-55" fill="#171D23" mask="url(#mask-26)" points="-4.897 17.209 14.766 17.209 14.766 -4.336 -4.897 -4.336"></polygon>
|
||||
</g>
|
||||
<g id="Group-60" transform="translate(25.000000, 13.000000)">
|
||||
<mask id="mask-28" fill="white">
|
||||
<use xlink:href="#path-27"></use>
|
||||
</mask>
|
||||
<g id="Clip-59"></g>
|
||||
<polygon id="Fill-58" fill="#171D23" mask="url(#mask-28)" points="-4.168 17.209 15.495 17.209 15.495 -4.336 -4.168 -4.336"></polygon>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 18 KiB |
|
@ -0,0 +1,106 @@
|
|||
<svg width="86px" height="51px" viewBox="0 0 86 51" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<path d="M8.849,0.085 L5.999,6.152 C5.842,6.399 5.74,6.746 5.532,7.238 L5.481,7.238 C5.427,7.042 5.272,6.647 5.066,6.201 L2.268,0.136 L0.867,0.136 L0.867,8.866 L1.904,8.866 L1.904,2.995 L1.904,1.318 C2.008,1.713 2.059,2.009 2.163,2.208 L5.272,8.866 L5.791,8.866 L8.953,2.157 C9.004,2.009 9.108,1.713 9.212,1.318 C9.159,1.96 9.159,2.552 9.159,2.995 L9.159,8.866 L10.196,8.866 L10.196,0.085 L8.849,0.085 Z" id="path-1"></path>
|
||||
<path d="M0.217,0.937 C0.062,1.036 0.011,1.232 0.011,1.38 C0.011,1.528 0.113,1.676 0.217,1.824 C0.321,1.972 0.476,2.022 0.685,2.022 C0.891,2.022 1.048,1.972 1.15,1.824 C1.308,1.727 1.359,1.579 1.359,1.38 C1.359,1.232 1.308,1.085 1.15,0.937 C1.048,0.789 0.891,0.741 0.685,0.741 C0.53,0.741 0.375,0.789 0.217,0.937 Z M0.166,9.866 L1.203,9.866 L1.203,3.6 L0.166,3.6 L0.166,9.866 Z" id="path-3"></path>
|
||||
<path d="M1.379,1.39 C0.757,2.032 0.447,2.822 0.447,3.857 C0.447,4.794 0.757,5.534 1.328,6.125 C1.898,6.719 2.676,7.014 3.609,7.014 C4.336,7.014 4.903,6.866 5.421,6.571 L5.475,6.571 L5.475,5.633 C4.956,5.977 4.438,6.176 3.866,6.176 C3.192,6.176 2.676,5.977 2.261,5.534 C1.847,5.09 1.639,4.547 1.639,3.808 C1.639,3.067 1.847,2.476 2.261,2.032 C2.727,1.589 3.245,1.341 3.919,1.341 C4.488,1.341 5.009,1.489 5.475,1.836 L5.475,0.799 C5.009,0.552 4.488,0.452 3.919,0.452 C2.884,0.452 2.104,0.799 1.379,1.39 Z" id="path-5"></path>
|
||||
<path d="M2.378,0.85 C2.065,1.094 1.859,1.441 1.702,1.884 L1.702,0.603 L0.667,0.603 L0.667,6.864 L1.702,6.864 L1.702,3.661 C1.702,2.967 1.859,2.425 2.169,2.032 C2.479,1.637 2.843,1.441 3.311,1.441 C3.613,1.441 3.846,1.475 4.035,1.574 L4.035,0.603 C3.88,0.552 3.672,0.5 3.415,0.5 C3.051,0.5 2.688,0.603 2.378,0.85 Z M4.035,1.637 L4.139,1.637 C4.105,1.613 4.071,1.594 4.035,1.574 L4.035,1.637 Z" id="path-7"></path>
|
||||
<path d="M1.176,1.341 C0.604,1.933 0.294,2.771 0.294,3.808 C0.294,4.794 0.604,5.534 1.176,6.127 C1.746,6.719 2.524,7.014 3.507,7.014 C4.494,7.014 5.269,6.667 5.892,6.028 C6.461,5.434 6.771,4.647 6.771,3.658 C6.771,2.672 6.515,1.884 5.943,1.291 C5.424,0.748 4.649,0.452 3.663,0.452 C2.625,0.452 1.746,0.748 1.176,1.341 Z M1.952,5.485 C1.588,5.09 1.382,4.499 1.382,3.757 C1.382,2.967 1.537,2.376 1.952,1.933 C2.366,1.487 2.885,1.291 3.558,1.291 C4.232,1.291 4.751,1.538 5.114,1.933 C5.478,2.328 5.683,2.919 5.683,3.709 C5.683,4.499 5.478,5.09 5.114,5.485 C4.751,5.929 4.232,6.127 3.558,6.127 C2.885,6.127 2.366,5.929 1.952,5.485 Z" id="path-9"></path>
|
||||
<path d="M2.26,0.6 C2.003,0.699 1.742,0.799 1.482,0.946 C1.223,1.094 1.068,1.291 0.966,1.393 C0.809,1.637 0.758,1.884 0.758,2.18 C0.758,2.427 0.809,2.624 0.862,2.82 C0.913,3.019 1.017,3.166 1.172,3.314 C1.33,3.462 1.536,3.612 1.742,3.709 C2.003,3.857 2.209,3.956 2.519,4.056 C2.728,4.104 2.936,4.203 3.091,4.252 C3.244,4.351 3.401,4.399 3.557,4.499 C3.661,4.596 3.765,4.695 3.867,4.794 C3.918,4.942 3.973,5.09 3.973,5.238 C3.973,5.832 3.506,6.127 2.57,6.127 C1.897,6.127 1.276,5.929 0.704,5.536 L0.704,6.619 C1.172,6.866 1.795,7.014 2.364,7.014 C2.728,7.014 3.038,6.963 3.351,6.915 C3.661,6.815 3.918,6.719 4.179,6.571 C4.439,6.423 4.591,6.275 4.749,6.028 C4.904,5.832 4.955,5.536 4.955,5.238 C4.955,4.991 4.904,4.794 4.8,4.596 C4.749,4.399 4.591,4.252 4.439,4.104 C4.281,3.956 4.075,3.808 3.867,3.709 C3.661,3.561 3.401,3.462 3.091,3.365 C2.883,3.266 2.677,3.166 2.519,3.118 C2.364,3.019 2.209,2.967 2.105,2.871 C2.003,2.771 1.897,2.672 1.846,2.575 C1.795,2.476 1.742,2.328 1.742,2.18 C1.742,2.081 1.795,1.933 1.846,1.836 C1.897,1.688 2.003,1.637 2.105,1.538 C2.209,1.441 2.364,1.393 2.519,1.341 C2.677,1.291 2.83,1.291 3.038,1.291 C3.661,1.291 4.23,1.441 4.698,1.736 L4.698,0.748 C4.281,0.552 3.765,0.452 3.193,0.452 C2.883,0.452 2.57,0.5 2.26,0.6 Z" id="path-11"></path>
|
||||
<path d="M1.719,1.341 C1.147,1.933 0.837,2.771 0.837,3.808 C0.837,4.794 1.147,5.534 1.719,6.127 C2.288,6.719 3.066,7.014 4.05,7.014 C5.036,7.014 5.814,6.667 6.434,6.028 C7.004,5.434 7.314,4.647 7.314,3.658 C7.314,2.672 7.057,1.884 6.488,1.291 C5.967,0.748 5.191,0.452 4.205,0.452 C3.17,0.452 2.392,0.748 1.719,1.341 Z M2.497,5.485 C2.133,5.09 1.927,4.499 1.927,3.757 C1.927,2.967 2.08,2.376 2.497,1.933 C2.909,1.487 3.427,1.291 4.103,1.291 C4.777,1.291 5.346,1.538 5.659,1.933 C6.02,2.328 6.226,2.919 6.226,3.709 C6.226,4.499 6.02,5.09 5.659,5.485 C5.293,5.929 4.777,6.127 4.103,6.127 C3.427,6.127 2.909,5.929 2.497,5.485 Z" id="path-13"></path>
|
||||
<path d="M2.388,1.085 C1.974,1.479 1.819,1.974 1.819,2.614 L1.819,3.603 L0.677,3.603 L0.677,4.441 L1.819,4.441 L1.819,9.864 L2.856,9.864 L2.856,4.489 L3.58,4.489 L4.358,4.489 L5.706,4.489 L5.706,8.187 C5.706,9.42 6.277,10.014 7.416,10.014 C7.831,10.014 8.143,9.966 8.403,9.815 L8.403,8.977 C8.194,9.125 7.986,9.176 7.729,9.176 C7.365,9.176 7.157,9.076 7.002,8.929 C6.847,8.732 6.794,8.434 6.794,8.042 L6.794,4.489 L8.453,4.489 L8.453,3.603 L6.794,3.603 L6.794,1.775 L5.756,2.122 L5.756,3.651 L4.409,3.651 L3.634,3.651 L2.907,3.651 L2.907,2.665 C2.907,1.775 3.27,1.332 3.995,1.332 C4.256,1.332 4.462,1.383 4.668,1.479 L4.668,0.593 C4.462,0.542 4.203,0.494 3.893,0.494 C3.321,0.494 2.803,0.69 2.388,1.085 Z" id="path-15"></path>
|
||||
<path d="M4.398,0.136 L0.822,8.866 L2.014,8.866 L2.947,6.399 L6.834,6.399 L7.82,8.866 L9.01,8.866 L5.486,0.136 L4.398,0.136 Z M4.762,1.762 C4.813,1.616 4.866,1.417 4.917,1.17 C4.968,1.466 5.021,1.665 5.072,1.762 L6.523,5.462 L3.361,5.462 L4.762,1.762 Z" id="path-17"></path>
|
||||
<path d="M4.79,0.6 L4.79,4.152 C4.79,4.746 4.584,5.238 4.274,5.582 C3.962,5.929 3.547,6.125 3.029,6.125 C1.941,6.125 1.422,5.485 1.422,4.152 L1.422,0.6 L0.385,0.6 L0.385,4.351 C0.385,6.125 1.165,7.014 2.719,7.014 C3.651,7.014 4.325,6.619 4.74,5.878 L4.74,6.866 L5.777,6.866 L5.828,6.866 L5.828,0.6 L4.79,0.6 Z" id="path-19"></path>
|
||||
<path d="M2.249,0.85 C1.939,1.094 1.73,1.441 1.575,1.884 L1.575,0.603 L0.538,0.603 L0.538,6.864 L1.575,6.864 L1.575,3.661 C1.575,2.967 1.73,2.425 2.041,2.032 C2.353,1.637 2.714,1.441 3.182,1.441 C3.47,1.441 3.71,1.482 3.909,1.603 L3.909,0.603 C3.751,0.552 3.545,0.5 3.286,0.5 C2.923,0.5 2.559,0.603 2.249,0.85 Z M3.909,1.637 L3.96,1.637 C3.943,1.625 3.926,1.615 3.909,1.603 L3.909,1.637 Z" id="path-21"></path>
|
||||
<path d="M1.048,1.39 C0.476,1.981 0.166,2.771 0.166,3.757 C0.166,4.746 0.425,5.584 0.946,6.125 C1.462,6.667 2.187,6.966 3.12,6.966 C4.055,6.966 4.83,6.767 5.402,6.372 L5.402,5.434 C4.78,5.88 4.106,6.125 3.381,6.125 C2.708,6.125 2.187,5.977 1.826,5.584 C1.462,5.187 1.256,4.645 1.256,3.956 L5.868,3.956 L5.868,3.413 C5.868,2.524 5.608,1.785 5.143,1.242 C4.675,0.699 4.002,0.452 3.173,0.452 C2.344,0.452 1.62,0.799 1.048,1.39 Z M1.93,1.785 C2.24,1.441 2.654,1.291 3.173,1.291 C3.692,1.291 4.055,1.489 4.365,1.785 C4.625,2.081 4.78,2.524 4.78,3.118 L1.307,3.118 C1.358,2.575 1.566,2.129 1.93,1.785 Z" id="path-23"></path>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<path d="M41.5513,2.9871 L41.5513,17.1581 L61.6853,17.0061 L61.6853,0.1911 L41.5513,2.9871 Z M24.5363,5.2121 L24.5513,17.2661 L39.7253,17.1841 L39.7203,3.2441 L24.5363,5.2121 Z M24.5493,30.7531 L39.7253,32.7391 L39.7123,18.7901 L24.5493,18.6951 L24.5493,30.7531 Z M41.5513,32.9551 L61.6853,35.6591 L61.6883,18.9211 L41.5253,18.8901 L41.5513,32.9551 Z" id="Fill-1" fill="#000000"></path>
|
||||
<g id="Group-4" transform="translate(0.000000, 41.410000)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-3"></g>
|
||||
<polygon id="Fill-2" fill="#000000" mask="url(#mask-2)" points="-5.085 14.819 16.15 14.819 16.15 -5.868 -5.085 -5.868"></polygon>
|
||||
</g>
|
||||
<g id="Group-7" transform="translate(12.000000, 40.410000)">
|
||||
<mask id="mask-4" fill="white">
|
||||
<use xlink:href="#path-3"></use>
|
||||
</mask>
|
||||
<g id="Clip-6"></g>
|
||||
<polygon id="Fill-5" fill="#000000" mask="url(#mask-4)" points="-5.942 15.819 7.311 15.819 7.311 -5.213 -5.942 -5.213"></polygon>
|
||||
</g>
|
||||
<g id="Group-10" transform="translate(14.000000, 43.410000)">
|
||||
<mask id="mask-6" fill="white">
|
||||
<use xlink:href="#path-5"></use>
|
||||
</mask>
|
||||
<g id="Clip-9"></g>
|
||||
<polygon id="Fill-8" fill="#000000" mask="url(#mask-6)" points="-5.506 12.966 11.427 12.966 11.427 -5.501 -5.506 -5.501"></polygon>
|
||||
</g>
|
||||
<g id="Group-13" transform="translate(20.000000, 43.410000)">
|
||||
<mask id="mask-8" fill="white">
|
||||
<use xlink:href="#path-7"></use>
|
||||
</mask>
|
||||
<g id="Clip-12"></g>
|
||||
<polygon id="Fill-11" fill="#000000" mask="url(#mask-8)" points="-5.286 12.818 10.092 12.818 10.092 -5.451 -5.286 -5.451"></polygon>
|
||||
</g>
|
||||
<g id="Group-16" transform="translate(24.000000, 43.410000)">
|
||||
<mask id="mask-10" fill="white">
|
||||
<use xlink:href="#path-9"></use>
|
||||
</mask>
|
||||
<g id="Clip-15"></g>
|
||||
<polygon id="Fill-14" fill="#000000" mask="url(#mask-10)" points="-5.659 12.966 12.725 12.966 12.725 -5.501 -5.659 -5.501"></polygon>
|
||||
</g>
|
||||
<g id="Group-19" transform="translate(31.000000, 43.410000)">
|
||||
<mask id="mask-12" fill="white">
|
||||
<use xlink:href="#path-11"></use>
|
||||
</mask>
|
||||
<g id="Clip-18"></g>
|
||||
<polygon id="Fill-17" fill="#000000" mask="url(#mask-12)" points="-5.246 12.967 10.909 12.967 10.909 -5.501 -5.246 -5.501"></polygon>
|
||||
</g>
|
||||
<g id="Group-22" transform="translate(36.000000, 43.410000)">
|
||||
<mask id="mask-14" fill="white">
|
||||
<use xlink:href="#path-13"></use>
|
||||
</mask>
|
||||
<g id="Clip-21"></g>
|
||||
<polygon id="Fill-20" fill="#000000" mask="url(#mask-14)" points="-5.117 12.966 13.268 12.966 13.268 -5.501 -5.117 -5.501"></polygon>
|
||||
</g>
|
||||
<g id="Group-25" transform="translate(43.000000, 40.410000)">
|
||||
<mask id="mask-16" fill="white">
|
||||
<use xlink:href="#path-15"></use>
|
||||
</mask>
|
||||
<g id="Clip-24"></g>
|
||||
<polygon id="Fill-23" fill="#000000" mask="url(#mask-16)" points="-5.275 15.965 14.406 15.965 14.406 -5.46 -5.275 -5.46"></polygon>
|
||||
</g>
|
||||
<g id="Group-28" transform="translate(54.000000, 41.410000)">
|
||||
<mask id="mask-18" fill="white">
|
||||
<use xlink:href="#path-17"></use>
|
||||
</mask>
|
||||
<g id="Clip-27"></g>
|
||||
<polygon id="Fill-26" fill="#000000" mask="url(#mask-18)" points="-5.131 14.818 14.964 14.818 14.964 -5.818 -5.131 -5.818"></polygon>
|
||||
</g>
|
||||
<polygon id="Fill-29" fill="#000000" points="63.4272 44.0121 63.4272 44.8991 66.9502 44.8991 63.0632 49.9781 63.0632 50.2731 68.4012 50.2731 68.4012 49.3871 64.5652 49.3871 68.4522 44.3091 68.4522 44.0121"></polygon>
|
||||
<g id="Group-32" transform="translate(69.000000, 43.410000)">
|
||||
<mask id="mask-20" fill="white">
|
||||
<use xlink:href="#path-19"></use>
|
||||
</mask>
|
||||
<g id="Clip-31"></g>
|
||||
<polygon id="Fill-30" fill="#000000" mask="url(#mask-20)" points="-5.567 12.966 11.781 12.966 11.781 -5.353 -5.567 -5.353"></polygon>
|
||||
</g>
|
||||
<g id="Group-35" transform="translate(76.000000, 43.410000)">
|
||||
<mask id="mask-22" fill="white">
|
||||
<use xlink:href="#path-21"></use>
|
||||
</mask>
|
||||
<g id="Clip-34"></g>
|
||||
<polygon id="Fill-33" fill="#000000" mask="url(#mask-22)" points="-5.414 12.818 9.913 12.818 9.913 -5.451 -5.414 -5.451"></polygon>
|
||||
</g>
|
||||
<g id="Group-38" transform="translate(80.000000, 43.410000)">
|
||||
<mask id="mask-24" fill="white">
|
||||
<use xlink:href="#path-23"></use>
|
||||
</mask>
|
||||
<g id="Clip-37"></g>
|
||||
<polygon id="Fill-36" fill="#000000" mask="url(#mask-24)" points="-5.786 12.917 11.821 12.917 11.821 -5.499 -5.786 -5.499"></polygon>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 12 KiB |
|
@ -0,0 +1,23 @@
|
|||
<svg width="73px" height="18px" viewBox="0 0 73 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<polygon id="path-1" points="7.65941019 13.0049549 7.65941019 0.0216043925 0.0217380566 0.0216043925 0.0217380566 13.0049549 7.65941019 13.0049549"></polygon>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<path d="M24.6664602,12.7431526 C23.8186847,14.1329087 22.6005184,14.9678227 20.9525203,14.9678227 C20.1797856,14.9678227 19.4512113,14.7844881 18.789733,14.3798947 C17.3810072,13.517805 16.5626913,12.2918853 16.5626913,10.625418 C16.5626913,10.0089236 16.684995,9.41731617 16.953437,8.85995355 C17.7471356,7.21159374 19.0700632,6.2835928 20.9083599,6.2835928 C21.7510322,6.2835928 22.5300009,6.51927972 23.2296955,6.98978439 C24.506752,7.84761523 25.2537386,9.03140963 25.2537386,10.581004 C25.2537386,11.3525564 25.0708048,12.0805349 24.6664602,12.7431526 M20.9952889,4.08974888 L20.6911533,4.08974888 C19.5885348,4.08974888 18.5388624,4.37155916 17.589979,4.93486103 C15.5489735,6.14722178 14.3684727,8.03097879 14.3684727,10.4087078 L14.3684727,10.8429975 C14.3651382,11.9327779 14.6574436,13.003147 15.2142765,13.9402162 C16.4213954,15.9849704 18.3120583,17.1599573 20.6911533,17.1599573 L21.1258275,17.1599573 C22.2261843,17.1599573 23.2750158,16.8722367 24.2244501,16.3157143 C26.2753721,15.113262 27.4482471,13.2195965 27.4482471,10.8429975 L27.4482471,10.4087078 C27.4482471,9.39439935 27.1860392,8.4262143 26.6961573,7.53923766 C25.4709161,5.32192645 23.5374846,4.08974888 20.9952889,4.08974888" id="Fill-1" fill="#000000"></path>
|
||||
<path d="M10.2968944,12.7448504 C9.4340991,14.1727915 8.18310975,14.9678401 6.49660538,14.9678401 C5.80198502,14.9678401 5.14111563,14.7890251 4.53229347,14.4562821 C3.0267511,13.6329569 2.19396635,12.342256 2.19396635,10.6254354 C2.19396635,10.0089121 2.3162991,9.41730458 2.58416113,8.85994196 C3.37814967,7.21161112 4.70107728,6.28358121 6.53934501,6.28358121 C7.43273071,6.28358121 8.25191648,6.54586439 8.97962091,7.0687214 C10.1799548,7.93136159 10.8850136,9.09278963 10.8850136,10.5809924 C10.8850136,11.3536747 10.6981365,12.0805233 10.2968944,12.7448504 M12.0703278,2.60747664e-05 L11.8958898,2.60747664e-05 C11.2655818,2.60747664e-05 10.8850136,0.488638224 10.8850136,1.09693355 L10.8850136,5.7262186 C9.73313148,4.71332981 8.36714529,4.08976626 6.75710252,4.08976626 L6.32187745,4.08976626 C5.2311182,4.08597093 4.15972805,4.37783449 3.22183399,4.93429897 C1.17572528,6.14127093 3.76943759e-05,8.03125692 3.76943759e-05,10.4086962 L3.76943759e-05,10.8429859 C-0.00355776917,11.9327373 0.288428665,13.0030485 0.844971627,13.9402336 C2.05267043,15.9849588 3.94275343,17.1599747 6.32187745,17.1599747 L6.75710252,17.1599747 C7.84742684,17.1625242 8.91823707,16.8707186 9.8563051,16.315413 C11.9041246,15.1107008 13.0792322,13.2196139 13.0792322,10.8429859 L13.0792322,1.09693355 C13.0792322,0.489188692 12.7003748,2.60747664e-05 12.0703278,2.60747664e-05" id="Fill-3" fill="#000000"></path>
|
||||
<g id="Group-7" transform="translate(64.689348, 4.155014)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-6"></g>
|
||||
<path d="M6.5621762,0.0216043925 L6.34412873,0.0216043925 L6.34412873,0.0218941121 C5.06454965,0.0218941121 3.86734728,0.410929626 2.82219822,1.14794738 C1.0717004,2.38180533 0.0217380566,4.14104084 0.0217380566,6.29612028 L0.0217380566,11.9083081 C0.0217380566,12.5168932 0.401726361,13.0049549 1.03232427,13.0049549 L1.20563142,13.0049549 C1.83622933,13.0049549 2.21650759,12.5166035 2.21650759,11.9083081 L2.21650759,6.60084738 C2.21650759,5.42612121 2.58715929,4.35749037 3.43409392,3.52312682 C4.11340457,2.85456981 5.05434317,2.25844271 6.03973215,2.25844271 C6.79098106,2.25844271 7.65943049,2.02614551 7.65943049,1.11851187 C7.65943049,0.464672617 7.22023302,0.0216043925 6.5621762,0.0216043925" id="Fill-5" fill="#000000" mask="url(#mask-2)"></path>
|
||||
</g>
|
||||
<g id="Group-10" transform="translate(50.220507, 3.981182)" fill="#000000">
|
||||
<path d="M8.21458456,5.1993229 C6.59065285,6.60011729 4.96190787,7.99636308 3.33374279,9.39118925 C3.17913786,9.20759393 3.0361312,9.0149014 2.90814429,8.80977991 C2.5448575,8.22779112 2.36079296,7.56856308 2.33814734,6.88444813 C2.28151879,5.14755 2.92852825,3.75185467 4.44769859,2.87533692 C5.60836641,2.20593972 6.85625322,2.04410234 8.12200137,2.52593505 C8.74891683,2.76501168 9.48682773,3.16589673 9.92854783,3.72215841 C9.37809396,4.22490888 8.76959075,4.72116963 8.21458456,5.1993229 L8.21458456,5.1993229 Z M12.212827,3.15882757 C11.6085572,2.1128528 10.731612,1.31754346 9.64908752,0.78393785 C7.63609187,-0.208293925 5.53532631,-0.285822897 3.57527676,0.84475 L3.27456262,1.01820514 C2.47973322,1.47738178 1.79987165,2.06446963 1.27968927,2.82440421 C-0.227302886,5.02305748 -0.407655976,7.45510888 0.928580652,9.76721636 L1.05938014,9.99383505 C1.61919961,10.9634397 2.37807438,11.7587491 3.36998739,12.2946145 C5.44471483,13.4155977 7.65844753,13.5819547 9.739699,12.3817621 L9.92741699,12.273407 C10.4914988,11.9477621 10.6293733,11.3711332 10.3422581,10.7976332 C10.2193744,10.552907 9.9897287,10.3879696 9.74903561,10.2713864 L9.69240706,10.2436603 L9.63096523,10.2332014 C9.23679804,10.1647407 8.16532091,10.6318556 7.74624643,10.8098014 C6.92706066,10.9524014 6.01668349,10.9922958 5.21817163,10.7136145 C6.67305856,9.45683972 8.12681465,8.19809486 9.58283241,6.94216028 C10.235786,6.37914813 10.9235924,5.74706682 11.6048747,5.22195 C12.1918631,4.76926308 12.7604393,4.10722477 12.3215608,3.34726121 L12.212827,3.15882757 Z" id="Fill-8"></path>
|
||||
</g>
|
||||
<path d="M38.7859934,5.09217589 L38.7067192,5.03727402 C37.7411343,4.3783357 36.663974,4.04646187 35.4945205,4.04646187 L35.0595854,4.04646187 C33.9572569,4.04646187 32.9078454,4.32940206 31.958991,4.89241421 C29.9182465,6.10364505 28.7374557,7.98682262 28.7374557,10.3642908 L28.7374557,10.7980011 C28.7374557,11.3650114 28.8108147,11.9053964 28.9736254,12.4494609 C29.9108816,15.5826338 32.3695697,17.3865731 35.6570702,17.1594039 C36.5886722,17.0943329 39.030079,16.7887656 39.030079,15.4538824 L39.030079,15.2368824 C39.030079,14.7004665 38.6534832,14.3844114 38.1545546,14.2805759 L38.1098143,14.2715366 L37.7040488,14.2715366 L37.6134373,14.314531 C37.0907033,14.5626759 36.2582085,14.9231161 35.6692484,14.9231161 C34.9995643,14.9231161 34.2084174,14.8676637 33.5956518,14.5751049 C31.9182231,13.7735665 30.9313843,12.4588189 30.9313843,10.5810011 C30.9313843,9.96421701 31.054007,9.37431888 31.3227099,8.81692729 C32.1008378,7.20113196 33.4271869,6.16958523 35.2603514,6.23859645 C35.618274,6.2521843 36.2384045,6.30366748 36.5696801,6.45872542 C36.8619275,6.59622636 37.6063334,6.9349086 37.9336656,6.9349086 L38.0633632,6.9349086 L38.105262,6.92754972 C38.6110045,6.83020393 39.030079,6.52918523 39.030079,5.96953383 L39.030079,5.75253383 C39.030079,5.54712262 38.9403084,5.34738991 38.8361269,5.17480393 L38.7859934,5.09217589 Z" id="Fill-11" fill="#000000"></path>
|
||||
<path d="M48.2098686,4.18595318 L48.1651283,4.17662421 L47.7720919,4.17662421 C47.4127775,4.17662421 46.5001387,5.16685692 46.2591847,5.40086346 C45.3941277,6.23945692 44.5389583,7.09050832 43.6866595,7.94324009 L43.6866595,1.13937748 C43.6866595,0.53108215 43.3055114,0.0444400935 42.6760443,0.0444400935 L42.5033171,0.0444400935 C41.8732991,0.0444400935 41.4924409,0.53108215 41.4924409,1.13937748 L41.4924409,16.0203336 C41.4924409,16.6286289 41.8730091,17.1175307 42.5033171,17.1175307 L42.6760443,17.1175307 C43.3055114,17.1175307 43.6866595,16.6286289 43.6866595,16.0203336 L43.6866595,13.3794522 L45.3711922,15.0317522 C45.8735132,15.524913 46.3681794,16.0324728 46.8807069,16.5151747 C47.1293158,16.7497027 47.5393437,17.1599457 47.9023695,17.1599457 L48.0770684,17.1599457 C48.6317847,17.1599457 48.9494903,16.7565111 49.0726639,16.2562812 L49.085393,16.2039289 L49.085393,15.9775999 C49.085393,15.7984952 49.025082,15.6307186 48.9268446,15.4819186 C48.8353633,15.3231812 48.6745243,15.1805812 48.5655296,15.0659971 C48.2563777,14.7433653 47.9447902,14.4231093 47.630796,14.1051709 C46.4987179,12.9533616 45.3584341,11.8094906 44.2170194,10.6664597 L46.8679778,7.97748495 C47.3838979,7.45462794 47.9145187,6.93828963 48.4185505,6.4043943 C48.6555611,6.15343916 49.085393,5.7273485 49.085393,5.36067935 L49.085393,5.14394009 C49.085393,4.6063943 48.7105079,4.28978869 48.2098686,4.18595318" id="Fill-13" fill="#000000"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 8.5 KiB |
|
@ -0,0 +1,32 @@
|
|||
<svg width="91px" height="10px" viewBox="0 0 91 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<polygon id="path-1" points="0 9.85414706 90.7994466 9.85414706 90.7994466 2.94117647e-05 0 2.94117647e-05"></polygon>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<path d="M77.5193071,6.88202941 C76.7606793,6.88202941 76.0397472,6.27555882 76.0397472,5.21467647 C76.0397472,4.15379412 76.7606793,3.54761765 77.5193071,3.54761765 C78.2782294,3.54761765 78.998867,4.15379412 78.998867,5.21467647 C78.998867,6.23791176 78.2782294,6.84408824 77.5193071,6.88202941 Z M77.5193071,2.78967647 C76.1534236,2.78967647 75.166854,3.81261765 75.166854,5.21467647 C75.166854,6.57908824 76.1534236,7.63997059 77.5193071,7.63997059 C78.8854851,7.63997059 79.8717602,6.61702941 79.8717602,5.21467647 C79.8717602,3.81261765 78.8854851,2.78967647 77.5193071,2.78967647 Z" id="Fill-1" fill="#000000"></path>
|
||||
<path d="M35.858123,6.80620588 C34.4542492,6.80620588 33.2780227,5.78297059 33.2780227,4.15385294 C33.2780227,2.52414706 34.4542492,1.50120588 35.858123,1.50120588 C36.6170453,1.50120588 37.2619968,1.7665 37.7172913,2.33473529 L38.3245469,1.7665 C37.7172913,1.08444118 36.8826828,0.667382353 35.858123,0.667382353 C33.8849838,0.667382353 32.3674337,2.18326471 32.3674337,4.15385294 C32.3674337,6.16238235 33.8849838,7.64002941 35.858123,7.60208824 C36.9963592,7.60208824 37.9449385,7.10944118 38.5142039,6.42738235 L37.9069482,5.82091176 C37.4136634,6.42738235 36.6927314,6.80620588 35.858123,6.80620588" id="Fill-3" fill="#000000"></path>
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-6"></g>
|
||||
<polygon id="Fill-5" fill="#000000" mask="url(#mask-2)" points="39.1591553 7.48826471 40.031754 7.48826471 40.031754 0.819147059 39.1591553 0.819147059"></polygon>
|
||||
<path d="M81.4274479,3.699 L81.3894576,3.699 L81.3894576,2.94105882 L80.5548492,2.94105882 L80.5548492,7.48841176 L81.4274479,7.48841176 L81.4274479,4.98752941 C81.4274479,4.15370588 81.9967133,3.66105882 82.6036744,3.66105882 C82.7936259,3.66105882 82.9449981,3.699 83.0589689,3.73694118 L83.4005871,2.94105882 C83.2109301,2.86547059 83.0209786,2.82752941 82.7556356,2.82752941 C82.2623508,2.82752941 81.6173994,3.16841176 81.4274479,3.699" id="Fill-7" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M89.1678078,2.78964706 C88.4468757,2.78964706 87.9156006,3.13052941 87.574277,3.66111765 C87.3463353,3.13052941 86.853345,2.78964706 86.1324129,2.78964706 C85.6011379,2.78964706 84.9941767,3.13052941 84.7285392,3.58552941 L84.6905489,3.58552941 L84.6905489,2.94111765 L83.8559405,2.94111765 L83.7799599,2.94111765 L83.7799599,7.602 L84.6525586,7.602 L84.6525586,5.06317647 C84.6525586,4.38111765 85.1458434,3.66111765 85.8287851,3.66111765 C86.4740311,3.66111765 86.853345,3.96435294 86.853345,4.91170588 L86.853345,7.56405882 L87.7259437,7.56405882 L87.7259437,5.02552941 C87.7259437,4.34317647 88.2192285,3.62317647 88.9024647,3.62317647 C89.5471217,3.62317647 89.9267301,3.92641176 89.9267301,4.87376471 L89.9267301,7.52611765 L90.7993288,7.52611765 L90.7993288,4.722 C90.7993288,3.58552941 90.306044,2.78964706 89.1678078,2.78964706" id="Fill-8" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<polygon id="Fill-9" fill="#000000" mask="url(#mask-2)" points="62.6836861 7.48826471 63.5565793 7.48826471 63.5565793 0.819147059 62.6836861 0.819147059"></polygon>
|
||||
<path d="M43.0293353,6.88202941 C42.2704129,6.88202941 41.5497754,6.27555882 41.5497754,5.21467647 C41.5497754,4.15379412 42.2704129,3.54761765 43.0293353,3.54761765 C43.7882576,3.54761765 44.5088951,4.15379412 44.5088951,5.21467647 C44.5088951,6.23791176 43.7882576,6.84408824 43.0293353,6.88202941 M43.0293353,2.78967647 C41.6634518,2.78967647 40.6768822,3.81261765 40.6768822,5.21467647 C40.6768822,6.57908824 41.6634518,7.63997059 43.0293353,7.63997059 C44.3955133,7.63997059 45.3817883,6.61702941 45.3817883,5.21467647 C45.3817883,3.81261765 44.3955133,2.78967647 43.0293353,2.78967647" id="Fill-10" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M53.1222366,6.88202941 C52.3633142,6.88202941 51.6803725,6.23791176 51.6803725,5.21467647 C51.6803725,4.15379412 52.3633142,3.54761765 53.1222366,3.54761765 C53.8808644,3.54761765 54.5641006,4.15379412 54.5641006,5.21467647 C54.5641006,6.23791176 53.8428741,6.84408824 53.1222366,6.88202941 L53.1222366,6.88202941 Z M54.4881201,2.94114706 L54.5261104,3.58555882 L54.4881201,3.58555882 C54.2224825,3.1685 53.6535117,2.78967647 52.9322851,2.78967647 C51.7940489,2.78967647 50.7697835,3.81261765 50.7697835,5.21467647 C50.7697835,6.61702941 51.7940489,7.63997059 52.9702754,7.63997059 C53.6915019,7.63997059 54.2604728,7.26114706 54.5261104,6.84408824 L54.5641006,6.84408824 L54.5641006,7.4885 L55.3610133,7.4885 L55.3610133,0.819088235 L54.4881201,0.819088235 L54.4881201,2.94114706 Z" id="Fill-11" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M60.0276935,3.96426471 L58.5858294,3.96426471 L58.5858294,1.61485294 L60.0276935,1.61485294 C60.7866159,1.61485294 61.2039201,2.25926471 61.2039201,2.78955882 C61.2039201,3.32014706 60.7866159,3.96426471 60.0276935,3.96426471 M59.9897032,0.819264706 L57.7132307,0.819264706 L57.7132307,7.45044118 L58.5858294,7.45044118 L58.5858294,4.76014706 L59.9897032,4.76014706 C61.0899492,4.76014706 62.0765188,3.92661765 62.0765188,2.78955882 C62.0765188,1.65279412 61.0899492,0.819264706 59.9897032,0.819264706" id="Fill-12" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M66.1365324,6.84411765 C65.6812379,6.84411765 65.1879531,6.61705882 65.1879531,6.12441176 C65.1879531,5.70735294 65.5292767,5.21470588 66.4398657,5.21470588 C67.1610922,5.21470588 67.5404061,5.51794118 67.5404061,5.51794118 C67.5404061,6.27558824 66.8194741,6.84411765 66.1365324,6.84411765 M66.3264838,2.78970588 C65.1879531,2.78970588 64.6189822,3.47176471 64.467021,3.88852941 L65.2636392,4.22941176 C65.4156003,3.81264706 65.8708948,3.58529412 66.3641796,3.58529412 C66.9711408,3.58529412 67.5404061,4.00205882 67.5404061,4.68411765 L67.5404061,4.79794118 C67.3507492,4.72205882 66.8954547,4.53294118 66.2884935,4.53294118 C65.2259434,4.53294118 64.2773641,5.10117647 64.2773641,6.12441176 C64.2773641,7.07147059 65.0742767,7.64 65.9845712,7.67794118 C66.7814838,7.67794118 67.2367783,7.26117647 67.5024159,6.88205882 L67.5404061,6.88205882 L67.5404061,7.52617647 L68.3753091,7.52617647 L68.3753091,4.76 C68.3753091,3.47176471 67.4647201,2.78970588 66.3264838,2.78970588" id="Fill-13" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M71.0690858,6.84411765 C70.6897718,6.84411765 70.4618301,6.61705882 70.4618301,6.08647059 L70.4618301,3.73705882 L71.6003608,3.73705882 L71.6003608,2.94117647 L70.4618301,2.94117647 L70.4618301,1.53911765 L69.5895259,1.53911765 L69.5895259,2.94117647 L68.7926133,2.94117647 L68.7926133,3.73705882 L69.5895259,3.73705882 L69.5895259,6.12441176 C69.5895259,7.03382353 70.1205065,7.56411765 71.0690858,7.60205882 C71.3344288,7.60205882 71.5623706,7.56411765 71.7520275,7.48823529 L71.4483997,6.76852941 C71.3344288,6.84411765 71.2210469,6.84411765 71.0690858,6.84411765" id="Fill-14" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M49.2520566,5.44217647 C49.2520566,6.12423529 48.7964676,6.84423529 48.0378398,6.84423529 C47.3928883,6.84423529 46.8996036,6.50305882 46.8996036,5.556 L46.8996036,2.90335294 L46.0270049,2.90335294 L46.0270049,5.70717647 C46.0270049,6.84423529 46.5959757,7.64011765 47.7722023,7.64011765 C48.3791634,7.64011765 48.9484288,7.26129412 49.2140663,6.84423529 L49.2520566,6.84423529 L49.2520566,7.48835294 L49.2520566,7.52629412 L50.1246553,7.52629412 L50.1246553,2.94129412 L49.2520566,2.94129412 L49.2520566,5.44217647 Z" id="Fill-15" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M73.7250489,2.33482353 C73.7250489,1.80423529 74.0663725,1.53894118 74.4839712,1.53894118 C74.6356379,1.53894118 74.7496087,1.57688235 74.8632851,1.61482353 L75.1669129,0.894823529 C74.977256,0.819235294 74.7873045,0.781294118 74.5219615,0.781294118 C73.5353919,0.781294118 72.8904405,1.38747059 72.8904405,2.33482353 L72.8904405,2.90335294 L72.0175472,2.90335294 L72.0175472,3.69894118 L72.8524502,3.69894118 L72.8524502,7.48835294 L73.7250489,7.48835294 L73.7250489,3.69894118 L74.9012754,3.69894118 L74.9012754,2.90335294 L73.7250489,2.90335294 L73.7250489,2.33482353 Z" id="Fill-16" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M10.3044984,6.6715 C9.56059547,6.6715 8.91152104,6.05973529 8.91152104,5.17826471 C8.91152104,4.28973529 9.55323301,3.68532353 10.3044984,3.68532353 C11.0484013,3.68532353 11.6971812,4.28973529 11.6971812,5.17826471 C11.6971812,6.05973529 11.0484013,6.6715 10.3044984,6.6715 M10.3044984,2.72385294 C8.94067638,2.72385294 7.83218447,3.75826471 7.83218447,5.18561765 C7.83218447,6.60561765 8.94067638,7.64738235 10.3044984,7.64738235 C11.6680259,7.64738235 12.7768123,6.60561765 12.7768123,5.18561765 C12.7768123,3.75826471 11.6680259,2.72385294 10.3044984,2.72385294" id="Fill-17" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M3.88693689,3.47411765 L3.88693689,4.51558824 L6.38840615,4.51558824 C6.31537055,5.09823529 6.11864563,5.52794118 5.81943528,5.82647059 C5.45484628,6.19058824 4.8861699,6.59147059 3.88693689,6.59147059 C2.34818285,6.59147059 1.14486246,5.35323529 1.14486246,3.81647059 C1.14486246,2.27970588 2.34818285,1.04147059 3.88693689,1.04147059 C4.71830583,1.04147059 5.3235,1.36911765 5.76848706,1.79176471 L6.51238997,1.05617647 C5.88510841,0.458823529 5.05373948,0 3.88693689,0 C1.77214401,0 0.000147249191,1.71147059 0.000147249191,3.82352941 C0.000147249191,5.92852941 1.77214401,7.64 3.88693689,7.64 C5.02458414,7.64 5.88510841,7.26852941 6.56333819,6.56941176 C7.25599838,5.88470588 7.46774272,4.91617647 7.46774272,4.12970588 C7.46774272,3.88205882 7.44565534,3.66352941 7.40913754,3.47411765 L3.88693689,3.47411765 Z" id="Fill-18" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M21.0828741,6.6715 C20.3392657,6.6715 19.7119841,6.04502941 19.7119841,5.18561765 C19.7119841,4.31885294 20.3392657,3.68532353 21.0828741,3.68532353 C21.8194146,3.68532353 22.3957479,4.31885294 22.3957479,5.18561765 C22.4028159,6.05238235 21.8194146,6.6715 21.0828741,6.6715 L21.0828741,6.6715 Z M22.3227123,3.27032353 L22.2861945,3.27032353 C22.0455893,2.97885294 21.5788094,2.71679412 20.9880456,2.71679412 C19.7555699,2.71679412 18.6252851,3.79444118 18.6252851,5.18561765 C18.6252851,6.56208824 19.7555699,7.64002941 20.9880456,7.64002941 C21.5788094,7.64002941 22.0455893,7.37767647 22.2861945,7.07944118 L22.3227123,7.07944118 L22.3227123,7.43620588 C22.3227123,8.37561765 21.8194146,8.87826471 21.0098385,8.87826471 C20.3463337,8.87826471 19.9378644,8.40502941 19.7702948,8.00414706 L18.829667,8.39738235 C19.0994275,9.05297059 19.821243,9.85414706 21.017201,9.85414706 C22.2861945,9.85414706 23.3581686,9.11120588 23.3581686,7.29032353 L23.3581686,2.86973529 L22.3227123,2.86973529 L22.3227123,3.27032353 Z" id="Fill-19" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<path d="M15.7009456,6.6715 C14.9570427,6.6715 14.3082628,6.05973529 14.3082628,5.17826471 C14.3082628,4.28973529 14.9499748,3.68532353 15.7009456,3.68532353 C16.452211,3.68532353 17.093923,4.28973529 17.093923,5.17826471 C17.093923,6.05973529 16.4448485,6.6715 15.7009456,6.6715 M15.7009456,2.72385294 C14.3374181,2.72385294 13.2286317,3.75826471 13.2286317,5.18561765 C13.2286317,6.60561765 14.3374181,7.64738235 15.7009456,7.64738235 C17.0647676,7.64738235 18.1732595,6.60561765 18.1732595,5.18561765 C18.1732595,3.75826471 17.0647676,2.72385294 15.7009456,2.72385294" id="Fill-20" fill="#000000" mask="url(#mask-2)"></path>
|
||||
<polygon id="Fill-21" fill="#000000" mask="url(#mask-2)" points="24.1020421 7.49444118 25.1813786 7.49444118 25.1813786 0.262382353 24.1020421 0.262382353"></polygon>
|
||||
<path d="M26.7784434,5.10552941 C26.749288,4.15876471 27.5149838,3.67082353 28.0692298,3.67082353 C28.4994919,3.67082353 28.8640809,3.882 28.9809968,4.19494118 L26.7784434,5.10552941 Z M30.1404369,4.28994118 C29.936055,3.73641176 29.309068,2.72376471 28.032712,2.72376471 C26.7640129,2.72376471 25.7064693,3.72170588 25.7064693,5.18552941 C25.7064693,6.562 26.749288,7.64758824 28.1493333,7.64758824 C29.2799126,7.64758824 29.9289871,6.95552941 30.20611,6.55494118 L29.3673786,5.99405882 C29.0828932,6.40170588 28.7038738,6.67141176 28.1493333,6.67141176 C27.5950874,6.67141176 27.2087055,6.41641176 26.9533754,5.92847059 L30.2496958,4.56641176 L30.1404369,4.28994118 Z" id="Fill-22" fill="#000000" mask="url(#mask-2)"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
|
@ -0,0 +1,22 @@
|
|||
<svg width="84px" height="14px" viewBox="0 0 84 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<polygon id="path-1" points="6.05538447e-21 0.198342857 6.05538447e-21 13.4639143 31.4560787 13.4639143 31.4560787 0.198342857 0 0.198342857"></polygon>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<path d="M49.0568489,0.731203571 C48.5640191,0.731203571 48.3088915,1.06920357 48.1922745,1.45966786 L45.1030404,10.6580964 L42.0656362,1.48241786 C41.9257851,1.04691786 41.6219553,0.731203571 41.1300191,0.731203571 L41.0348489,0.731203571 C40.5697213,0.731203571 40.2886787,1.04691786 40.1492745,1.48241786 L37.0864021,10.6580964 L34.0449766,1.50748929 C33.9055723,1.04738214 33.6008489,0.731667857 33.1325936,0.731667857 C32.5964234,0.731667857 32.2224447,1.16856071 32.2224447,1.62913214 C32.2224447,1.79906071 32.2921468,1.99313214 32.3390617,2.13984643 L36.0087,12.7589893 C36.1972532,13.3152036 36.5698915,13.606775 37.0126787,13.606775 L37.0618277,13.606775 C37.5282957,13.606775 37.879934,13.3152036 38.0439128,12.7589893 L41.0839979,3.73513214 L44.0981681,12.7589893 C44.2630404,13.3152036 44.6146787,13.606775 45.0824872,13.606775 L45.1526362,13.606775 C45.5739766,13.606775 45.9466149,13.3152036 46.1351681,12.7589893 L49.828934,2.11523929 C49.8745085,1.96759643 49.9455511,1.77398929 49.9455511,1.604525 C49.9455511,1.14209643 49.5706787,0.731203571 49.0568489,0.731203571" id="Fill-1" fill="#000000"></path>
|
||||
<path d="M68.7321511,0.7319 C67.4252362,0.7319 65.4530234,1.71943571 64.5638745,3.81243571 L64.5638745,1.65768571 C64.5638745,1.12097143 64.1671085,0.707292857 63.6497043,0.707292857 C63.1586617,0.707292857 62.7610021,1.14511429 62.7610021,1.65768571 L62.7618957,12.6412929 C62.7618957,13.1738286 63.1595553,13.5898286 63.6756191,13.5898286 C64.1903426,13.5898286 64.5647681,13.1524714 64.5647681,12.6412929 L64.5647681,8.37357857 C64.5647681,4.74657857 66.482917,2.92007857 68.8259809,2.62850714 C69.2987043,2.55515 69.6244277,2.19207857 69.6244277,1.67997143 C69.6244277,1.14511429 69.2732362,0.7319 68.7321511,0.7319" id="Fill-3" fill="#000000"></path>
|
||||
<path d="M71.2812383,6.50533929 C71.508217,4.07108929 73.0684723,2.26594643 75.1336213,2.26594643 C77.4981319,2.26594643 78.7375787,4.23916071 78.9225574,6.50533929 L71.2812383,6.50533929 Z M75.1814298,0.698982143 C71.9000681,0.698982143 69.4895362,3.589625 69.4895362,7.17808929 L69.4895362,7.22776786 C69.4895362,11.0804107 72.1511745,13.7082679 75.4110894,13.7082679 C77.4293234,13.7082679 78.7617064,12.9584464 79.884983,11.8279107 C80.0708553,11.6607679 80.1624511,11.4434821 80.1624511,11.2275893 C80.1624511,10.7920893 79.8170681,10.430875 79.3823234,10.430875 C79.1745574,10.430875 79.0146,10.5269821 78.8765362,10.6463036 C78.0030255,11.4889821 76.9280043,12.091625 75.4584511,12.091625 C73.3441532,12.091625 71.5323447,10.5748036 71.2821319,7.87916071 L79.8621957,7.87916071 C80.2956,7.87916071 80.6892383,7.51655357 80.6892383,7.00908929 C80.6892383,3.70755357 78.6911106,0.698982143 75.1814298,0.698982143 L75.1814298,0.698982143 Z" id="Fill-5" fill="#000000"></path>
|
||||
<path d="M58.8752872,8.83716786 C58.8752872,10.824775 57.0523085,12.2324893 54.8352447,12.2324893 C53.1985851,12.2324893 51.7991809,11.3104179 51.7991809,9.73370357 L51.7991809,9.68541786 C51.7991809,8.11009643 53.0618617,7.08959643 55.3240532,7.08959643 C56.7940532,7.08959643 57.9865851,7.357025 58.8752872,7.623525 L58.8752872,8.83716786 Z M55.4415638,0.733989286 C53.9014149,0.733989286 53.0046702,0.912275 51.8157128,1.448525 C51.4868617,1.59988214 51.3246702,1.83991786 51.3246702,2.22666786 C51.3246702,2.66263214 51.6995426,3.02756071 52.1204362,3.02756071 C52.2115851,3.02756071 52.3295426,3.00295357 52.4439255,2.95420357 C53.3335213,2.54238214 54.0408191,2.38173929 55.2552447,2.38173929 C57.517883,2.38173929 58.8525,3.548025 58.8525,5.80306071 L58.8525,6.24181071 C57.7761383,5.92423929 56.6796702,5.706025 55.1372872,5.706025 C52.0793298,5.706025 49.9775426,7.11513214 49.9775426,9.75923929 L49.9775426,9.80798929 C49.9775426,12.3801321 52.2446489,13.7130964 54.4880745,13.7149536 C56.6086277,13.7149536 58.0107128,12.6972393 58.8529468,11.5550964 L58.8529468,12.7515607 C58.8529468,13.236275 59.200117,13.6253464 59.7117128,13.6253464 C60.2049894,13.6253464 60.5785213,13.2358107 60.5785213,12.703275 L60.5785213,5.780775 C60.5785213,4.178525 60.1576277,2.96581071 59.3390745,2.11663214 C58.4535,1.19363214 57.1452447,0.733989286 55.4415638,0.733989286 L55.4415638,0.733989286 Z" id="Fill-7" fill="#000000"></path>
|
||||
<g id="Group-11" transform="translate(0.000000, 0.265804)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-10"></g>
|
||||
<path d="M27.1403553,0.198342857 C24.7861213,0.198342857 23.3116532,1.89112857 23.3116532,1.89112857 C22.5283979,0.835342857 21.4480149,0.200664286 19.6201213,0.200664286 C17.6908021,0.200664286 16.0027596,1.89112857 16.0027596,1.89112857 C15.2181638,0.835342857 13.8835468,0.200664286 12.7781426,0.200664286 C11.0686532,0.200664286 9.71080213,0.981592857 8.88286596,2.95016429 L6.43569574,8.94316429 L3.29686596,1.25366429 C2.90144043,0.35295 1.92427021,-0.0551571429 1.01144043,0.36595 C0.0977170213,0.78845 -0.238282979,1.84098571 0.174121277,2.74216429 L4.00639787,11.3969143 C4.60914255,12.7530929 5.24405745,13.4639143 6.43569574,13.4639143 C7.7091,13.4639143 8.26448298,12.68995 8.86633404,11.3969143 C8.86633404,11.3969143 12.2089085,3.83509286 12.2419723,3.75616429 C12.2759298,3.67584286 12.3836106,3.43162857 12.7236319,3.43395 C13.0109298,3.43580714 13.2531,3.67398571 13.2531,3.99480714 L13.2531,11.3894857 C13.2531,12.5293071 13.8612064,13.4639143 15.0318447,13.4639143 C16.2015894,13.4639143 16.8338234,12.5293071 16.8338234,11.3894857 L16.8338234,5.33798571 C16.8338234,4.17123571 17.6385255,3.41352143 18.7354404,3.41352143 C19.8323553,3.41352143 20.5624404,4.19816429 20.5624404,5.33798571 L20.5624404,11.3894857 C20.5624404,12.5293071 21.1727809,13.4639143 22.3411851,13.4639143 C23.510483,13.4639143 24.1462915,12.5293071 24.1462915,11.3894857 L24.1462915,5.33798571 C24.1462915,4.17123571 24.947866,3.41352143 26.0452277,3.41352143 C27.1403553,3.41352143 27.8731213,4.19816429 27.8731213,5.33798571 L27.8731213,11.3894857 C27.8731213,12.5293071 28.4830149,13.4639143 29.6527596,13.4639143 C30.8216106,13.4639143 31.4560787,12.5293071 31.4560787,11.3894857 L31.4560787,4.50273571 C31.4560787,1.97145 29.4972702,0.198342857 27.1403553,0.198342857" id="Fill-9" fill="#000000" mask="url(#mask-2)"></path>
|
||||
</g>
|
||||
<path d="M83.5352745,2.25875 C83.5352745,2.95285714 83.0093809,3.53275 82.3275511,3.53275 C81.6372319,3.53275 81.1175936,2.96167857 81.1175936,2.26710714 L81.1175936,2.25875 C81.1175936,1.56835714 81.6434872,0.987071429 82.3275511,0.987071429 C83.0178702,0.987071429 83.5352745,1.55814286 83.5352745,2.25457143 L83.5352745,2.25875 Z M82.3275511,0.69875 C81.4964872,0.69875 80.8352106,1.41189286 80.8352106,2.25875 L80.8352106,2.26896429 C80.8352106,3.11814286 81.4844234,3.82153571 82.3275511,3.82153571 C83.163083,3.82153571 83.8225723,3.10839286 83.8225723,2.25875 L83.8225723,2.25225 C83.8225723,1.40446429 83.1702319,0.69875 82.3275511,0.69875 L82.3275511,0.69875 Z" id="Fill-12" fill="#000000"></path>
|
||||
<path d="M82.6377702,1.99642857 C82.6377702,2.12457143 82.5528766,2.20907143 82.3973872,2.20907143 L82.3973872,2.20814286 L82.0738979,2.20814286 L82.0738979,1.77589286 L82.3915787,1.77589286 C82.5461745,1.77589286 82.6377702,1.85157143 82.6377702,1.99132143 L82.6377702,1.99642857 Z M82.4152596,1.47875 L81.9170681,1.47875 C81.8272596,1.47875 81.7557702,1.55210714 81.7557702,1.64496429 L81.7566638,1.64496429 L81.7566638,2.82889286 C81.7566638,2.92082143 81.8277064,2.99417857 81.9175149,2.99417857 C82.0068766,2.99417857 82.0752383,2.92175 82.0752383,2.82889286 L82.0752383,2.50203571 L82.3299191,2.50203571 L82.6395574,2.90921429 C82.6770894,2.95703571 82.7248979,2.99464286 82.7959404,2.99464286 C82.8718979,2.99464286 82.9465149,2.93428571 82.9465149,2.84235714 C82.9465149,2.79128571 82.9264085,2.75739286 82.8951319,2.71560714 L82.6753021,2.43703571 C82.8491106,2.36089286 82.9639404,2.2165 82.9639404,1.97971429 L82.9639404,1.97507143 C82.9639404,1.83578571 82.9192596,1.71553571 82.8370468,1.63242857 C82.7472383,1.534 82.6029191,1.47875 82.4152596,1.47875 L82.4152596,1.47875 Z" id="Fill-14" fill="#000000"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 779 B |
|
@ -1,30 +0,0 @@
|
|||
|
||||
<svg width="110px" height="42px" viewBox="423 368 183 70" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<desc>HashiCorp Packer</desc>
|
||||
<defs>
|
||||
<polygon id="path-1" points="22.6878 62 0 62 0 0.5562 22.6878 0.5562 22.6878 62"></polygon>
|
||||
<polygon id="path-3" points="33.7967 0 0.2587 0 0.2587 55.0389996 33.7967 55.0389996 33.7967 1.42108547e-14"></polygon>
|
||||
</defs>
|
||||
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" transform="translate(423.000000, 368.000000)">
|
||||
<path d="M72.5193,24.7828 L66.4223,24.7828 L66.4223,35.7278 L72.5193,35.7278 C75.9273,35.7278 76.9363,34.4798 76.9363,31.8398 L76.9363,28.5758 C76.9363,25.9348 75.8323,24.7828 72.5193,24.7828 L72.5193,24.7828 Z M60.3743,19.4548 L72.8553,19.4548 C80.2483,19.4548 82.9843,22.4788 82.9843,28.0958 L82.9843,32.4638 C82.9843,38.0328 80.0083,41.0568 72.5673,41.0568 L66.4223,41.0568 L66.4223,51.4258 L60.3743,51.4258 L60.3743,19.4548 Z" id="Fill-1" fill="#FFFFFF"></path>
|
||||
<path d="M97.575,42.5928 L93.255,42.5928 C91.335,42.5928 90.806,43.1208 90.806,44.8978 C90.806,46.5298 91.335,47.2488 93.159,47.2488 C94.887,47.2488 96.471,46.6738 97.575,46.0498 L97.575,42.5928 Z M103.431,51.4258 L98.632,51.4258 L98.199,49.8418 C96.087,51.2338 93.591,51.9058 91.239,51.9058 C86.967,51.9058 85.142,48.9778 85.142,44.9458 C85.142,40.1928 87.207,38.3678 91.959,38.3678 L97.575,38.3678 L97.575,35.9208 C97.575,33.3278 96.855,32.4158 93.111,32.4158 C90.999,32.4158 88.694,32.7038 86.631,33.1348 L85.91,28.6718 C88.118,27.9998 91.335,27.5668 93.927,27.5668 C101.271,27.5668 103.431,30.1598 103.431,36.0158 L103.431,51.4258 Z" id="Fill-3" fill="#FFFFFF"></path>
|
||||
<path d="M106.9324,42.9288 L106.9324,36.5448 C106.9324,30.2558 109.6684,27.5668 117.0134,27.5668 C118.6464,27.5668 120.9974,27.8548 122.7264,28.4308 L122.0064,33.2318 C120.4214,32.7998 118.3104,32.6078 117.1584,32.6078 C113.7974,32.6078 112.7894,33.6158 112.7894,36.4958 L112.7894,42.9778 C112.7894,45.8578 113.7974,46.8658 117.1584,46.8658 C118.6464,46.8658 120.3264,46.6738 122.0064,46.2418 L122.7264,51.0418 C121.1904,51.5698 118.9344,51.9068 117.0134,51.9068 C109.6684,51.9068 106.9324,49.2178 106.9324,42.9288" id="Fill-5" fill="#FFFFFF"></path>
|
||||
<path d="M146.2947,28.0474 L139.4297,39.6174 L146.5827,51.4254 L140.1497,51.4254 L133.0937,39.6174 L139.7657,28.0474 L146.2947,28.0474 Z M126.4207,51.4254 L126.4207,18.4944 L132.2767,17.6784 L132.2767,51.4254 L126.4207,51.4254 Z" id="Fill-7" fill="#FFFFFF"></path>
|
||||
<path d="M153.9256,37.2647 L161.3656,37.2647 L161.3656,36.1117 C161.3656,33.9037 160.6946,32.3677 157.8136,32.3677 C154.9336,32.3677 153.9256,33.9037 153.9256,36.1117 L153.9256,37.2647 Z M158.4856,47.1057 C160.7416,47.1057 163.0936,46.7697 165.6386,46.0007 L166.5506,50.4177 C163.9096,51.4257 160.7416,51.9067 157.9576,51.9067 C150.6126,51.9067 148.0696,48.4967 148.0696,42.8807 L148.0696,36.6887 C148.0696,31.7437 150.2776,27.5667 157.7656,27.5667 C165.2536,27.5667 166.9346,31.9357 166.9346,36.9767 L166.9346,41.9687 L153.9256,41.9687 L153.9256,43.1687 C153.9256,46.0007 154.9336,47.1057 158.4856,47.1057 L158.4856,47.1057 Z" id="Fill-9" fill="#FFFFFF"></path>
|
||||
<path d="M182.5799,32.9439 C180.3239,33.9519 178.4999,35.0079 176.3879,36.3519 L176.3879,51.4259 L170.5309,51.4259 L170.5309,28.0479 L175.4759,28.0479 L175.8589,30.6389 C177.1549,29.7759 179.9399,28.1429 182.0039,27.5669 L182.5799,32.9439 Z" id="Fill-11" fill="#FFFFFF"></path>
|
||||
<g id="Group-15" transform="translate(0.000000, 8.000000)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-14"></g>
|
||||
<polygon id="Fill-13" fill="#71A798" mask="url(#mask-2)" points="-0.0002 0.5562 22.6878 13.6642 22.6878 62.0002 -0.0002 48.8912"></polygon>
|
||||
</g>
|
||||
<g id="Group-18" transform="translate(9.000000, 0.000000)">
|
||||
<mask id="mask-4" fill="white">
|
||||
<use xlink:href="#path-3"></use>
|
||||
</mask>
|
||||
<g id="Clip-17"></g>
|
||||
<path d="M24.9187,14.2047 L0.2587,-0.0003 L0.2587,9.8647 L17.0267,19.5477 L17.0267,49.1407 L24.9187,53.6737 C29.8017,56.4927 33.7967,54.8037 33.7967,49.9207 L33.7967,28.2077 C33.7967,23.3247 29.8017,17.0237 24.9187,14.2047" id="Fill-16" fill="#567D72" mask="url(#mask-4)"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 1.7 KiB |
|
@ -0,0 +1,7 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="423 368 142 54">
|
||||
<g fill="none" fill-rule="evenodd">
|
||||
<path class="p-front" d="M423.046 374.78l17.42 9.96v36.717l-17.42-9.958"/>
|
||||
<path class="p-back" d="M449.09 379.072l-18.935-10.79v7.493l12.876 7.356v22.485l6.06 3.443c3.75 2.14 6.82.858 6.82-2.85V389.71c0-3.71-3.07-8.497-6.82-10.638"/>
|
||||
<path class="text" d="M479.05 387.476h-4.55v8.194h4.55c2.542 0 3.294-.935 3.294-2.912v-2.443c0-1.977-.823-2.84-3.295-2.84zm-9.063-3.99h9.312c5.513 0 7.554 2.264 7.554 6.47v3.27c0 4.17-2.22 6.432-7.772 6.432H474.5v7.764h-4.513v-23.935zm28.12 17.324h-3.225c-1.433 0-1.827.394-1.827 1.725 0 1.22.394 1.76 1.755 1.76 1.29 0 2.472-.43 3.296-.898v-2.588zm4.37 6.612h-3.583l-.323-1.186c-1.572 1.042-3.433 1.546-5.19 1.546-3.19 0-4.55-2.193-4.55-5.212 0-3.557 1.54-4.923 5.088-4.923h4.19v-1.833c0-1.94-.537-2.624-3.33-2.624-1.576 0-3.295.216-4.835.54l-.536-3.343c1.647-.503 4.046-.827 5.98-.827 5.48 0 7.092 1.94 7.092 6.326v11.536zm3.15-6.362v-4.78c0-4.707 2.04-6.72 7.524-6.72 1.22 0 2.976.216 4.265.647l-.537 3.594c-1.182-.32-2.757-.463-3.618-.463-2.508 0-3.26.755-3.26 2.91v4.853c0 2.155.752 2.91 3.26 2.91 1.11 0 2.363-.144 3.617-.467l.537 3.595c-1.146.394-2.83.646-4.26.646-5.483 0-7.524-2.01-7.524-6.72m29.905-11.143l-5.12 8.66 5.335 8.845h-4.8l-5.264-8.842 4.98-8.66h4.87zm-14.827 17.505V382.77l4.37-.61v25.264h-4.37zm20.702-10.603h5.553v-.86c0-1.655-.5-2.805-2.65-2.805s-2.902 1.15-2.902 2.804v.86zm3.403 7.37c1.683 0 3.44-.254 5.337-.83l.68 3.308c-1.97.755-4.334 1.114-6.41 1.114-5.48 0-7.378-2.55-7.378-6.754v-4.636c0-3.703 1.647-6.83 7.235-6.83 5.586 0 6.84 3.27 6.84 7.044v3.738h-9.706v.9c0 2.118.756 2.946 3.406 2.946zm18.52-10.604c-1.684.755-3.045 1.546-4.62 2.552v11.285h-4.37V389.92h3.69l.284 1.94c.968-.646 3.045-1.868 4.585-2.3l.43 4.025z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 390 B |
Before Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 404 KiB |
Before Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 2.3 KiB |
|
@ -1,36 +0,0 @@
|
|||
(function(){
|
||||
|
||||
// Quick and dirty IE detection
|
||||
var isIE = (function(){
|
||||
if (window.navigator.userAgent.match('Trident')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
})();
|
||||
|
||||
// isIE = true;
|
||||
|
||||
var Init = {
|
||||
|
||||
start: function(){
|
||||
var id = document.body.id.toLowerCase();
|
||||
|
||||
if (this.Pages[id]) {
|
||||
this.Pages[id]();
|
||||
}
|
||||
//always init sidebar
|
||||
Init.initializeSidebar();
|
||||
},
|
||||
|
||||
initializeSidebar: function(){
|
||||
new Sidebar();
|
||||
},
|
||||
|
||||
Pages: {}
|
||||
|
||||
};
|
||||
|
||||
Init.start();
|
||||
|
||||
})();
|
|
@ -1,50 +0,0 @@
|
|||
(function(){
|
||||
|
||||
Sidebar = Base.extend({
|
||||
|
||||
$body: null,
|
||||
$overlay: null,
|
||||
$sidebar: null,
|
||||
$sidebarHeader: null,
|
||||
$sidebarImg: null,
|
||||
$toggleButton: null,
|
||||
|
||||
constructor: function(){
|
||||
this.$body = $('body');
|
||||
this.$overlay = $('.sidebar-overlay');
|
||||
this.$sidebar = $('#sidebar');
|
||||
this.$sidebarHeader = $('#sidebar .sidebar-header');
|
||||
this.$toggleButton = $('.navbar-toggle');
|
||||
this.sidebarImg = this.$sidebarHeader.css('background-image');
|
||||
|
||||
this.addEventListeners();
|
||||
},
|
||||
|
||||
addEventListeners: function(){
|
||||
var _this = this;
|
||||
|
||||
_this.$toggleButton.on('click', function() {
|
||||
_this.$sidebar.toggleClass('open');
|
||||
if ((_this.$sidebar.hasClass('sidebar-fixed-left') || _this.$sidebar.hasClass('sidebar-fixed-right')) && _this.$sidebar.hasClass('open')) {
|
||||
_this.$overlay.addClass('active');
|
||||
_this.$body.css('overflow', 'hidden');
|
||||
} else {
|
||||
_this.$overlay.removeClass('active');
|
||||
_this.$body.css('overflow', 'auto');
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
_this.$overlay.on('click', function() {
|
||||
$(this).removeClass('active');
|
||||
_this.$body.css('overflow', 'auto');
|
||||
_this.$sidebar.removeClass('open');
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
window.Sidebar = Sidebar;
|
||||
|
||||
})();
|
|
@ -1,10 +1,5 @@
|
|||
//= require jquery
|
||||
//= require bootstrap
|
||||
|
||||
//= require lib/Base
|
||||
//= require turbolinks
|
||||
|
||||
//= require hashicorp/mega-nav
|
||||
|
||||
//= require docs
|
||||
//= require app/Sidebar
|
||||
////= require app/Init
|
||||
//= require hashicorp/sidebar
|
||||
|
|
|
@ -1,46 +0,0 @@
|
|||
(function(){
|
||||
|
||||
var Init = {
|
||||
|
||||
start: function(){
|
||||
var classname = this.hasClass(document.body, 'page-sub');
|
||||
|
||||
if (classname) {
|
||||
this.addEventListeners();
|
||||
}
|
||||
},
|
||||
|
||||
hasClass: function (elem, className) {
|
||||
return new RegExp(' ' + className + ' ').test(' ' + elem.className + ' ');
|
||||
},
|
||||
|
||||
addEventListeners: function(){
|
||||
var _this = this;
|
||||
//console.log(document.querySelectorAll('.navbar-static-top')[0]);
|
||||
window.addEventListener('resize', _this.resizeImage, false);
|
||||
|
||||
this.resizeImage();
|
||||
},
|
||||
|
||||
resizeImage: function(){
|
||||
|
||||
var header = document.getElementById('header'),
|
||||
footer = document.getElementById('footer'),
|
||||
main = document.getElementById('main-content'),
|
||||
vp = window.innerHeight,
|
||||
bodyHeight = document.body.clientHeight,
|
||||
hHeight = header.clientHeight,
|
||||
fHeight = footer.clientHeight,
|
||||
withMinHeight = hHeight + fHeight + 830;
|
||||
|
||||
if(withMinHeight < vp && bodyHeight < vp){
|
||||
var newHeight = (vp - (hHeight+fHeight)) + 'px';
|
||||
main.style.height = newHeight;
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
Init.start();
|
||||
|
||||
})();
|
|
@ -1,145 +0,0 @@
|
|||
/*
|
||||
Based on Base.js 1.1a (c) 2006-2010, Dean Edwards
|
||||
Updated to pass JSHint and converted into a module by Kenneth Powers
|
||||
License: http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
/*global define:true module:true*/
|
||||
/*jshint eqeqeq:true*/
|
||||
(function (name, global, definition) {
|
||||
if (typeof module !== 'undefined') {
|
||||
module.exports = definition();
|
||||
} else if (typeof define !== 'undefined' && typeof define.amd === 'object') {
|
||||
define(definition);
|
||||
} else {
|
||||
global[name] = definition();
|
||||
}
|
||||
})('Base', this, function () {
|
||||
// Base Object
|
||||
var Base = function () {};
|
||||
|
||||
// Implementation
|
||||
Base.extend = function (_instance, _static) { // subclass
|
||||
var extend = Base.prototype.extend;
|
||||
// build the prototype
|
||||
Base._prototyping = true;
|
||||
var proto = new this();
|
||||
extend.call(proto, _instance);
|
||||
proto.base = function () {
|
||||
// call this method from any other method to invoke that method's ancestor
|
||||
};
|
||||
delete Base._prototyping;
|
||||
// create the wrapper for the constructor function
|
||||
//var constructor = proto.constructor.valueOf(); //-dean
|
||||
var constructor = proto.constructor;
|
||||
var klass = proto.constructor = function () {
|
||||
if (!Base._prototyping) {
|
||||
if (this._constructing || this.constructor === klass) { // instantiation
|
||||
this._constructing = true;
|
||||
constructor.apply(this, arguments);
|
||||
delete this._constructing;
|
||||
} else if (arguments[0] !== null) { // casting
|
||||
return (arguments[0].extend || extend).call(arguments[0], proto);
|
||||
}
|
||||
}
|
||||
};
|
||||
// build the class interface
|
||||
klass.ancestor = this;
|
||||
klass.extend = this.extend;
|
||||
klass.forEach = this.forEach;
|
||||
klass.implement = this.implement;
|
||||
klass.prototype = proto;
|
||||
klass.toString = this.toString;
|
||||
klass.valueOf = function (type) {
|
||||
return (type === 'object') ? klass : constructor.valueOf();
|
||||
};
|
||||
extend.call(klass, _static);
|
||||
// class initialization
|
||||
if (typeof klass.init === 'function') klass.init();
|
||||
return klass;
|
||||
};
|
||||
|
||||
Base.prototype = {
|
||||
extend: function (source, value) {
|
||||
if (arguments.length > 1) { // extending with a name/value pair
|
||||
var ancestor = this[source];
|
||||
if (ancestor && (typeof value === 'function') && // overriding a method?
|
||||
// the valueOf() comparison is to avoid circular references
|
||||
(!ancestor.valueOf || ancestor.valueOf() !== value.valueOf()) && /\bbase\b/.test(value)) {
|
||||
// get the underlying method
|
||||
var method = value.valueOf();
|
||||
// override
|
||||
value = function () {
|
||||
var previous = this.base || Base.prototype.base;
|
||||
this.base = ancestor;
|
||||
var returnValue = method.apply(this, arguments);
|
||||
this.base = previous;
|
||||
return returnValue;
|
||||
};
|
||||
// point to the underlying method
|
||||
value.valueOf = function (type) {
|
||||
return (type === 'object') ? value : method;
|
||||
};
|
||||
value.toString = Base.toString;
|
||||
}
|
||||
this[source] = value;
|
||||
} else if (source) { // extending with an object literal
|
||||
var extend = Base.prototype.extend;
|
||||
// if this object has a customized extend method then use it
|
||||
if (!Base._prototyping && typeof this !== 'function') {
|
||||
extend = this.extend || extend;
|
||||
}
|
||||
var proto = {
|
||||
toSource: null
|
||||
};
|
||||
// do the "toString" and other methods manually
|
||||
var hidden = ['constructor', 'toString', 'valueOf'];
|
||||
// if we are prototyping then include the constructor
|
||||
for (var i = Base._prototyping ? 0 : 1; i < hidden.length; i++) {
|
||||
var h = hidden[i];
|
||||
if (source[h] !== proto[h])
|
||||
extend.call(this, h, source[h]);
|
||||
}
|
||||
// copy each of the source object's properties to this object
|
||||
for (var key in source) {
|
||||
if (!proto[key]) extend.call(this, key, source[key]);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
};
|
||||
|
||||
// initialize
|
||||
Base = Base.extend({
|
||||
constructor: function () {
|
||||
this.extend(arguments[0]);
|
||||
}
|
||||
}, {
|
||||
ancestor: Object,
|
||||
version: '1.1',
|
||||
forEach: function (object, block, context) {
|
||||
for (var key in object) {
|
||||
if (this.prototype[key] === undefined) {
|
||||
block.call(context, object[key], key, object);
|
||||
}
|
||||
}
|
||||
},
|
||||
implement: function () {
|
||||
for (var i = 0; i < arguments.length; i++) {
|
||||
if (typeof arguments[i] === 'function') {
|
||||
// if it's a function, call it
|
||||
arguments[i](this.prototype);
|
||||
} else {
|
||||
// add the interface using the extend method
|
||||
this.prototype.extend(arguments[i]);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
},
|
||||
toString: function () {
|
||||
return String(this.valueOf());
|
||||
}
|
||||
});
|
||||
|
||||
// Return Base implementation
|
||||
return Base;
|
||||
});
|
|
@ -1,52 +1,37 @@
|
|||
@mixin button {
|
||||
font-family: $font-family-open-sans;
|
||||
height: $button-height;
|
||||
line-height: $button-height;
|
||||
background-color: transparent;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
display: block;
|
||||
padding: 0 30px;
|
||||
.button {
|
||||
background: $button-background;
|
||||
border: 1px solid $button-font-color;
|
||||
box-shadow: 3px 4px 0 rgba(0,0,0,0.1);
|
||||
color: $button-font-color;
|
||||
display: inline-block;
|
||||
font-family: $button-font-family;
|
||||
font-size: $button-font-size;
|
||||
font-weight: $button-font-weight;
|
||||
letter-spacing: 1px;
|
||||
margin-bottom: 4px;
|
||||
padding: 10px 30px;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 3px;
|
||||
@include rounded(5px);
|
||||
text-decoration: none;
|
||||
|
||||
&.spaced {
|
||||
margin-right: 20px;
|
||||
&:hover,
|
||||
&:active,
|
||||
&:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background: $button-font-color;
|
||||
border: 1px solid $button-font-color;
|
||||
color: $button-background;
|
||||
}
|
||||
|
||||
&.primary {
|
||||
color: $green;
|
||||
border-color: $green;
|
||||
background: $button-primary-background;
|
||||
border: 1px solid darken($button-primary-background, 5%);
|
||||
color: $button-primary-font-color;
|
||||
|
||||
&:hover {
|
||||
background-color: transparentize($green, .7);
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: transparentize($green, .5);
|
||||
}
|
||||
}
|
||||
|
||||
&.secondary {
|
||||
color: $black;
|
||||
border-color: $black;
|
||||
|
||||
&:hover {
|
||||
background-color: transparentize($black, .9);
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: transparentize($black, .7);
|
||||
}
|
||||
}
|
||||
|
||||
&.inline {
|
||||
margin: auto $baseline;
|
||||
@include respond-to(mobile) {
|
||||
display: block;
|
||||
width: 100%;
|
||||
margin: $baseline 0;
|
||||
background: lighten($button-primary-background, 5%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,43 +0,0 @@
|
|||
#main-content{
|
||||
display: flex;
|
||||
flex: 1;
|
||||
|
||||
#sidebar-docs,
|
||||
.docs-body{
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 992px) {
|
||||
#main-content{
|
||||
#sidebar-docs{
|
||||
max-width: 280px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#main-content{
|
||||
flex-direction: column;
|
||||
|
||||
#sidebar-docs,
|
||||
.docs-body{
|
||||
width: 100%;
|
||||
max-width: none;
|
||||
}
|
||||
|
||||
#sidebar-docs{
|
||||
li {
|
||||
&:last-child{
|
||||
border-bottom: none;
|
||||
}
|
||||
> *{
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.docs-content{
|
||||
padding: 40px 0 150px;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
#inner {
|
||||
.people {
|
||||
margin-top: 30px;
|
||||
|
||||
.person {
|
||||
&:after {
|
||||
display: block;
|
||||
clear: both;
|
||||
content: ' ';
|
||||
}
|
||||
|
||||
img {
|
||||
width: 125px;
|
||||
margin: auto auto;
|
||||
}
|
||||
|
||||
.bio {
|
||||
padding-left: 150px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,370 +0,0 @@
|
|||
header .header {
|
||||
height: 200px;
|
||||
background: #000000;
|
||||
|
||||
h1 {
|
||||
margin-bottom: -8px;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.hero {
|
||||
height: $hero-height + 100px;
|
||||
background: #000000 image-url('hero_image.jpg') no-repeat;
|
||||
background-position: 35px -40px;
|
||||
background-size: 100%;
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
h1 {
|
||||
margin-top: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: $screen-md-max) {
|
||||
height: $hero-height;
|
||||
|
||||
h1 {
|
||||
font-size: 36px;
|
||||
padding-top: 1em;
|
||||
padding-bottom: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: $screen-sm-max) {
|
||||
height: auto;
|
||||
background: none;
|
||||
|
||||
h1 {
|
||||
margin: 0;
|
||||
padding-top: 1em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.belt {
|
||||
&.download {
|
||||
background-color: $white;
|
||||
@extend .padded-sm;
|
||||
}
|
||||
|
||||
.download-container {
|
||||
background: image-url('down_arrow.png') no-repeat top left;
|
||||
display: inline-block;
|
||||
min-height: 73px;
|
||||
margin: 0 auto;
|
||||
padding-left: 100px;
|
||||
|
||||
@media (max-width: $screen-sm) {
|
||||
background: none;
|
||||
min-height: 50px;
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.download-row {
|
||||
text-align: center;
|
||||
|
||||
.small {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 44px;
|
||||
color: #7bc6b1;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
padding-top: 15px;
|
||||
padding-bottom: 3px;
|
||||
line-height: 1.0;
|
||||
white-space: nowrap;
|
||||
|
||||
@media (max-width: $screen-sm) {
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $dark-background;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
color: $gray-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.downloads {
|
||||
margin-top: 20px;
|
||||
|
||||
.description {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.download {
|
||||
border-bottom: 1px solid #b2b2b2;
|
||||
padding-bottom: 15px;
|
||||
margin-bottom: 15px;
|
||||
|
||||
.details {
|
||||
padding-left: 95px;
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
|
||||
&:after {
|
||||
content: " | ";
|
||||
}
|
||||
|
||||
&:last-child:after {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
font-size: 22px;
|
||||
color: darken($green, 15%);
|
||||
|
||||
&:hover {
|
||||
color: darken($green, 30%);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: darken($green, 50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
img {
|
||||
width: 75px;
|
||||
}
|
||||
}
|
||||
|
||||
.os-name {
|
||||
font-size: 40px;
|
||||
margin-bottom: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
.poweredby {
|
||||
margin-top: 20px;
|
||||
margin-bottom: 20px;
|
||||
|
||||
img {
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
width: 122px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.marketting {
|
||||
p {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
text-align: justify;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-wrapper {
|
||||
.docs-body {
|
||||
max-width: 960px;
|
||||
@extend .white-background;
|
||||
|
||||
.docs-content {
|
||||
flex-direction: column;
|
||||
padding: $docs-top-margin 120px 150px;
|
||||
display: block;
|
||||
|
||||
code {
|
||||
background-color: #000;
|
||||
border: 0;
|
||||
color: #b1d631;
|
||||
font-size: 14px;
|
||||
font-weight: normal;
|
||||
font-family: $font-family-mono;
|
||||
text-shadow: 0 0 0;
|
||||
}
|
||||
|
||||
a {
|
||||
color: darken($green, 15%);
|
||||
|
||||
&:hover {
|
||||
color: darken($green, 30%);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: darken($green, 50%);
|
||||
}
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
margin-top: $baseline;
|
||||
margin-left: 20px;
|
||||
margin-right: 20px;
|
||||
|
||||
li {
|
||||
font-size: 17px;
|
||||
line-height: (30/17) !important;
|
||||
margin-bottom: $baseline;
|
||||
pre {
|
||||
margin-left: -155px;
|
||||
margin-right: -155px;
|
||||
padding-left: 155px;
|
||||
padding-right: 155px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ol {
|
||||
list-style-type: decimal;
|
||||
}
|
||||
|
||||
div.alert {
|
||||
font-size: 17px;
|
||||
line-height: 1.5;
|
||||
margin-left: -135px;
|
||||
margin-right: -135px;
|
||||
padding-top: 40px;
|
||||
padding-bottom: 40px;
|
||||
padding-left: 80px;
|
||||
padding-right: 80px;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
pre {
|
||||
border: 0;
|
||||
font-size: 14px;
|
||||
margin-left: -135px;
|
||||
margin-right: -135px;
|
||||
padding-top: 40px;
|
||||
padding-bottom: 40px;
|
||||
padding-left: 135px;
|
||||
padding-right: 135px;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
section {
|
||||
margin-top: $docs-top-margin;
|
||||
}
|
||||
|
||||
h1 {
|
||||
line-height: (25/20);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin-top: $baseline * 2;
|
||||
text-transform: capitalize;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin-top: $baseline * 2;
|
||||
text-transform: capitalize;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.pagination {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
bottom: 1px;
|
||||
$border: 1px solid $gray-mid;
|
||||
height: $nav-height;
|
||||
border-top: $border;
|
||||
font-size: 20px;
|
||||
margin: 0 -15px 0 -15px;
|
||||
display: block;
|
||||
|
||||
h4 {
|
||||
display: inline-block;
|
||||
margin-top: ($baseline * 1.7);
|
||||
margin-left: $baseline;
|
||||
|
||||
@include respond-to(mobile) {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
@include respond-to(mobile) {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.previous-section,
|
||||
.next-section {
|
||||
height: $nav-height;
|
||||
display: block;
|
||||
|
||||
&:hover {
|
||||
background-color: transparentize($gray-light, .7);
|
||||
}
|
||||
}
|
||||
|
||||
.previous-section {
|
||||
width: $nav-height;
|
||||
border-right: $border;
|
||||
float: left;
|
||||
background: $white image-url('arrow-left.png') no-repeat center center;
|
||||
@include respond-to(mobile) {
|
||||
width: 50%;
|
||||
background-position: left center;
|
||||
}
|
||||
}
|
||||
|
||||
.next-section {
|
||||
background: $white image-url('arrow-right.png') no-repeat center right;
|
||||
}
|
||||
}
|
||||
|
||||
.people {
|
||||
margin-top: 30px;
|
||||
|
||||
.person {
|
||||
margin-bottom: 30px;
|
||||
|
||||
img {
|
||||
width: 125px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
.bio {
|
||||
padding-left: 150px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width:768px){
|
||||
.docs-wrapper {
|
||||
.docs-body {
|
||||
.docs-content {
|
||||
div.alert {
|
||||
margin-left: -15px;
|
||||
margin-right: -15px;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin-left: -15px;
|
||||
margin-right: -15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,75 @@
|
|||
#docs-sidebar {
|
||||
margin-bottom: 30px;
|
||||
margin-top: 50px;
|
||||
|
||||
ul.nav.docs-sidenav {
|
||||
display: block;
|
||||
padding-bottom: 15px;
|
||||
|
||||
li {
|
||||
a {
|
||||
color: $sidebar-link-color;
|
||||
font-size: $sidebar-font-size;
|
||||
padding: 10px 0 10px 15px;
|
||||
|
||||
&:before {
|
||||
color: $sidebar-link-color-active;
|
||||
content: '\203A';
|
||||
font-size: $font-size;
|
||||
left: 0;
|
||||
line-height: 100%;
|
||||
opacity: 0.4;
|
||||
position: absolute;
|
||||
|
||||
height: 100%;
|
||||
width: 8px
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
color: $sidebar-link-color-hover;
|
||||
|
||||
&:before {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// For forcing sub-navs to appear - in the long term, this should not
|
||||
// be a thing anymore...
|
||||
> ul.nav-visible {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
li.active {
|
||||
> a {
|
||||
color: $sidebar-link-color-active;
|
||||
|
||||
&:before {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Open nested navigations
|
||||
> ul.nav {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
// subnav
|
||||
ul.nav {
|
||||
display: none;
|
||||
margin: 10px;
|
||||
|
||||
li {
|
||||
margin-left: 10px;
|
||||
|
||||
a {
|
||||
padding: 6px 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
body.layout-downloads {
|
||||
#inner {
|
||||
.downloads {
|
||||
margin-top: 20px;
|
||||
|
||||
.description {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.download {
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #b2b2b2;
|
||||
display: flex;
|
||||
padding: 15px;
|
||||
|
||||
.details {
|
||||
padding-left: 20px;
|
||||
|
||||
h2 {
|
||||
margin-top: 4px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 0px;
|
||||
margin: -8px 0 0 0;
|
||||
}
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
|
||||
&:after {
|
||||
content: " | ";
|
||||
}
|
||||
|
||||
&:last-child:after {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
svg {
|
||||
width: 75px;
|
||||
}
|
||||
}
|
||||
|
||||
.os-name {
|
||||
font-size: 40px;
|
||||
margin-bottom: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
.poweredby {
|
||||
margin-top: 20px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,99 +1,22 @@
|
|||
#footer{
|
||||
background-color: $black;
|
||||
padding: 20px 0;
|
||||
#footer {
|
||||
padding-top: 50px;
|
||||
|
||||
&.white{
|
||||
background-color: $black;
|
||||
.footer-links{
|
||||
li > a {
|
||||
@include project-footer-a-subpage-style();
|
||||
}
|
||||
}
|
||||
ul.footer-links {
|
||||
li {
|
||||
a {
|
||||
color: $footer-link-color;
|
||||
font-size: $footer-font-size;
|
||||
font-family: $font-family-open-sans;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: transparent;
|
||||
color: $footer-link-color-hover;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.footer-links{
|
||||
li > a {
|
||||
@include project-footer-a-style();
|
||||
}
|
||||
}
|
||||
|
||||
.hashicorp-project{
|
||||
margin-top: 24px;
|
||||
&:hover{
|
||||
svg{
|
||||
.svg-bg-line{
|
||||
opacity: .4;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.pull-right{
|
||||
padding-right: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
body{
|
||||
&.page-Community{
|
||||
.edit-page-link{
|
||||
position: absolute;
|
||||
top: -70px;
|
||||
right: 30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.edit-page-link{
|
||||
position: absolute;
|
||||
top: -150px;
|
||||
right: 30px;;
|
||||
|
||||
a{
|
||||
text-transform: uppercase;
|
||||
color: $black;
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1500px) {
|
||||
.edit-page-link{
|
||||
top: -56px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#footer{
|
||||
padding: 20px 0 80px;
|
||||
@media (max-width: 992px) {
|
||||
text-align: center;
|
||||
|
||||
.footer-hashi{
|
||||
display: block;
|
||||
float: right !important;
|
||||
.hashicorp-project{
|
||||
margin-left: -30px;
|
||||
}
|
||||
}
|
||||
|
||||
ul{
|
||||
display: block;
|
||||
li{
|
||||
display: block;
|
||||
float: left;
|
||||
}
|
||||
|
||||
&.external-links{
|
||||
li{
|
||||
a{
|
||||
padding-left: 0 !important;
|
||||
margin-left: -14px;
|
||||
}
|
||||
svg{
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: 2px;
|
||||
margin-top: 0;
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
html {
|
||||
height: 100%;
|
||||
min-height: 100%;
|
||||
text-rendering: optimizeLegibility;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
body {
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: $body-font-color;
|
||||
background-color: $white;
|
||||
font-size: $font-size;
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: $font-weight-reg;
|
||||
height: 100%;
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5 {
|
||||
font-family: $font-family-klavika;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
// Avoid FOUT
|
||||
.wf-loading {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.wf-active, .wf-inactive {
|
||||
visibility: visible;
|
||||
}
|
|
@ -1,81 +1,78 @@
|
|||
//
|
||||
// Header
|
||||
// - Project Specific
|
||||
// - edits should be made here
|
||||
// --------------------------------------------------
|
||||
|
||||
#header {
|
||||
flex-direction: row;
|
||||
background-color: $black;
|
||||
background: $header-background-color;
|
||||
|
||||
.navbar-toggle {
|
||||
height: $header-height;
|
||||
margin: 0;
|
||||
padding-right: 15px;
|
||||
border-radius: 0;
|
||||
|
||||
.icon-bar {
|
||||
border: 1px solid $white;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
.logo{
|
||||
width: 110px;
|
||||
height: 42px;
|
||||
line-height: 70px;
|
||||
margin-top: 15px;
|
||||
background: image-url('logo-header.svg') 0 0 no-repeat;
|
||||
font-size: 0;
|
||||
display: block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
&:hover{
|
||||
opacity: .6;
|
||||
}
|
||||
}
|
||||
a {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: $header-height;
|
||||
line-height: $header-height;
|
||||
|
||||
.by-hashicorp{
|
||||
&:hover{
|
||||
svg{
|
||||
.svg-bg-line{
|
||||
opacity: .4;
|
||||
}
|
||||
svg.logo {
|
||||
transition: opacity 0.15s ease-in-out;
|
||||
@extend svg.logo.white;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
opacity: 0.6;
|
||||
outline: 0;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.buttons{
|
||||
margin-top: 2px; //baseline everything
|
||||
ul.nav {
|
||||
li {
|
||||
a {
|
||||
color: $header-link-color;
|
||||
font-size: $header-font-size;
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: $font-weight-bold;
|
||||
height: $header-height;
|
||||
line-height: $header-height;
|
||||
padding: 0 10px;
|
||||
margin: 0;
|
||||
text-decoration: none;
|
||||
|
||||
.navigation-links{
|
||||
float: right;
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: transparent;
|
||||
color: $header-link-color-hover;
|
||||
outline: 0;
|
||||
|
||||
svg {
|
||||
fill: $header-link-color-hover;
|
||||
}
|
||||
}
|
||||
|
||||
.main-links,
|
||||
.external-links {
|
||||
li > a {
|
||||
@include project-a-style();
|
||||
svg {
|
||||
fill: $header-link-color;
|
||||
position: relative;
|
||||
top: 2px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
margin-right: 3px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-links {
|
||||
li > a {
|
||||
color: $white;
|
||||
|
||||
&:hover{
|
||||
color: $green;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#header {
|
||||
.navbar-brand {
|
||||
.logo{
|
||||
margin-left: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 414px) {
|
||||
#header {
|
||||
.navbar-brand {
|
||||
.logo{
|
||||
width: 84px;
|
||||
height: 32px;
|
||||
background-size: contain;;
|
||||
}
|
||||
}
|
||||
.buttons {
|
||||
margin-top: 2px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,173 +0,0 @@
|
|||
/* variables */
|
||||
|
||||
//color
|
||||
$black: #000;
|
||||
$white: #fff;
|
||||
$red: #ff0000;
|
||||
|
||||
$green: #7bc6b1;
|
||||
$orange: #f2826a;
|
||||
$background: #f2eee5;
|
||||
$dark-background: #333;
|
||||
|
||||
$gray-dark: #5c5c5c;
|
||||
$gray-mid: #b2b2b2;
|
||||
$gray-light: #e0e0e0;
|
||||
|
||||
$border-dark: #333;
|
||||
|
||||
// base measures
|
||||
$baseline: 20px;
|
||||
$base-font-size: 16px;
|
||||
$base-line-height: 1.5;
|
||||
$button-height: 60px;
|
||||
|
||||
.center {
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.padded-lg {padding: ($baseline * 2) 0;}
|
||||
.padded {padding: ($baseline * 2) 0;}
|
||||
.padded-sm {padding: ($baseline) 0;}
|
||||
|
||||
|
||||
// components
|
||||
$nav-height: 100px;
|
||||
$hero-height: 460px;
|
||||
$docs-top-margin: 40px;
|
||||
$sidebar-background-color: $dark-background;
|
||||
$sidebar-width: 250px;
|
||||
|
||||
|
||||
//typography
|
||||
$font-family-open-sans: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
$font-family-klavika: 'klavika-web', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
$font-family-mono: 'Inconsolata', 'Monaco', 'courier new', courier, monospace;
|
||||
|
||||
.open-sans { font-family: $font-family-open-sans;}
|
||||
.klavika { font-family: $font-family-klavika; }
|
||||
.mono { font-family: $font-family-mono; }
|
||||
|
||||
.text-center { text-align: center !important; }
|
||||
.text-left { text-align: left !important; }
|
||||
.text-right { text-align: right !important; }
|
||||
|
||||
.text-green { color: $green; }
|
||||
|
||||
.uppercase { text-transform: uppercase !important; }
|
||||
|
||||
//color
|
||||
.dark-background {
|
||||
background-color: #000;
|
||||
color: $white;
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
|
||||
&:hover {
|
||||
color: $green;
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: darken($green, 30%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.white-background {
|
||||
background-color: $white;
|
||||
}
|
||||
|
||||
//elements
|
||||
.divider {
|
||||
background: image-url('divider.png') no-repeat center bottom;
|
||||
height: 70px;
|
||||
width: 70px;
|
||||
background-size: 70px 70px;
|
||||
display: table-cell;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.packer {
|
||||
color: $orange;
|
||||
font-size: 20px;
|
||||
|
||||
a:hover, a:active, a:visited {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
// media queries
|
||||
$break-sm: 480px;
|
||||
$break-med: 768px;
|
||||
$break-max: 1200px;
|
||||
$break-lg: 980px;
|
||||
|
||||
@mixin respond-to($media) {
|
||||
@if $media == mobile {
|
||||
@media only screen and (max-width: $break-sm) { @content; }
|
||||
}
|
||||
@else if $media == tablet {
|
||||
@media only screen and (max-width: $break-med - 1) { @content; }
|
||||
}
|
||||
@else if $media == desktop {
|
||||
@media only screen and (min-width: $break-med) and (max-width: $break-lg - 1) { @content; }
|
||||
}
|
||||
@else if $media == desktop-lg {
|
||||
@media only screen and (min-width: $break-max) { @content; }
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* example *
|
||||
.profile-pic {
|
||||
@include respond-to(mobile) { width: 100% ;}
|
||||
@include respond-to(tablet) { width: 125px; }
|
||||
}
|
||||
*/
|
||||
//////
|
||||
|
||||
/* utlities */
|
||||
.d {
|
||||
border-bottom: 1px solid $red;
|
||||
border-top: 1px solid $red;
|
||||
background-color: transparentize($red, .9);
|
||||
}
|
||||
|
||||
.hyphenate {
|
||||
-webkit-hyphens: auto;
|
||||
-moz-hyphens: auto;
|
||||
hyphens: auto;
|
||||
}
|
||||
|
||||
.full-width {
|
||||
margin-right: -20px;
|
||||
margin-left: -20px;
|
||||
}
|
||||
|
||||
.add-transition {
|
||||
-webkit-transition: all .1s ease-in-out;
|
||||
-moz-transition: all .1s ease-in-out;
|
||||
-o-transition: all .1s ease-in-out;
|
||||
transition: all .1s ease-in-out;
|
||||
}
|
||||
|
||||
@mixin opacity($opacity) {
|
||||
-khtml-opacity: $opacity;
|
||||
-moz-opacity: $opacity;
|
||||
opacity: $opacity;
|
||||
}
|
||||
|
||||
@mixin transform-scale($value) {
|
||||
-webkit-transform: scale($value);
|
||||
-moz-transform: scale($value);
|
||||
transform: scale($value);
|
||||
}
|
||||
|
||||
@mixin rounded($radius) {
|
||||
-webkit-border-radius: $radius;
|
||||
-moz-border-radius: $radius;
|
||||
-khtml-border-radius: $radius;
|
||||
border-radius: $radius;
|
||||
}
|
|
@ -0,0 +1,154 @@
|
|||
// TODO: remove
|
||||
$hero-height: 350px;
|
||||
$baseline: 20px;
|
||||
|
||||
|
||||
#page-home {
|
||||
// Override the main header
|
||||
#header {
|
||||
background: $home-header-background-color;
|
||||
|
||||
.navbar-toggle {
|
||||
.icon-bar {
|
||||
border: 1px solid $home-header-link-color;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
a {
|
||||
svg.logo {
|
||||
@extend svg.logo.color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul.nav {
|
||||
li {
|
||||
a {
|
||||
color: $home-header-link-color;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: transparent;
|
||||
color: $home-header-link-color-hover;
|
||||
|
||||
svg {
|
||||
fill: $home-header-link-color-hover;
|
||||
}
|
||||
}
|
||||
|
||||
svg {
|
||||
fill: $home-header-link-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
header {
|
||||
.hero {
|
||||
margin: 140px auto 160px auto;
|
||||
text-align: center;
|
||||
|
||||
.button {
|
||||
margin: 5px;
|
||||
|
||||
@media (max-width: 768px) {
|
||||
display: block;
|
||||
margin-top: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
svg {
|
||||
max-width: 90%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
section {
|
||||
background: $white;
|
||||
padding: 100px 0;
|
||||
}
|
||||
|
||||
section.marketing {
|
||||
h2 {
|
||||
font-family: $font-family-klavika;
|
||||
font-size: 36px;
|
||||
font-weight: $font-weight-bold;
|
||||
line-height: 1.25;
|
||||
letter-spacing: -0.02em;
|
||||
margin: 20px 0 10px 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
p {
|
||||
font-family: $font-family-open-sans;
|
||||
font-size: 16px;
|
||||
letter-spacing: 0.01em;
|
||||
line-height: 1.8;
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
|
||||
span.callout {
|
||||
background: $black;
|
||||
color: $white;
|
||||
display: inline-block;
|
||||
font-family: $font-family-klavika;
|
||||
font-size: 18px;
|
||||
font-weight: $font-weight-bold;
|
||||
line-height: 1;
|
||||
margin: 0;
|
||||
padding: 5px;
|
||||
letter-spacing: 0.05em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
&.invert {
|
||||
background: $packer-blue;
|
||||
|
||||
h2 {
|
||||
color: $white;
|
||||
}
|
||||
|
||||
p {
|
||||
color: $white;
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
}
|
||||
|
||||
&#automated {
|
||||
img {
|
||||
@media (min-width: 1024px) {
|
||||
padding-right: 40px;
|
||||
}
|
||||
|
||||
@media (max-width: 992px) {
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&#integrations {
|
||||
.integrations-list {
|
||||
display: flex;
|
||||
flex-flow: row wrap;
|
||||
justify-content: space-between;
|
||||
margin-top: 30px;
|
||||
|
||||
@media (min-width: 1024px) {
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
.integration {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border: 5px solid $packer-blue;
|
||||
height: 100px;
|
||||
width: 33.3%;
|
||||
background-color: $white;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,89 @@
|
|||
#inner {
|
||||
p, li, .alert {
|
||||
font-size: $font-size;
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: $font-weight-reg;
|
||||
line-height: 1.84em;
|
||||
margin: 0 0 $font-size;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.alert p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: $font-family-monospace;
|
||||
font-size: ($font-size - 3);
|
||||
font-weight: normal;
|
||||
padding: 20px;
|
||||
margin: 0 0 $font-size;
|
||||
|
||||
// This will force the code to scroll horizontally on small screens
|
||||
// instead of wrapping.
|
||||
code {
|
||||
overflow-wrap: normal;
|
||||
white-space: pre;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: $body-link-color;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
code {
|
||||
background: inherit;
|
||||
color: $body-link-color;
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
margin: 25px auto;
|
||||
max-width: 650px;
|
||||
height: auto;
|
||||
width: 90%;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4 {
|
||||
color: $body-font-color;
|
||||
margin-top: 54px;
|
||||
margin-bottom: $font-size;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
h2 {
|
||||
padding-bottom: 3px;
|
||||
border-bottom: 1px solid $gray-light;
|
||||
}
|
||||
|
||||
h1 > code,
|
||||
h2 > code,
|
||||
h3 > code,
|
||||
h4 > code,
|
||||
h5 > code
|
||||
h6 > code,
|
||||
li code,
|
||||
table code,
|
||||
p code,
|
||||
tt,
|
||||
.alert code {
|
||||
font-family: $font-family-monospace;
|
||||
font-size: 90%;
|
||||
background-color: transparent;
|
||||
color: inherit;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
table {
|
||||
@extend .table;
|
||||
@extend .table-striped;
|
||||
}
|
||||
}
|
|
@ -1,62 +0,0 @@
|
|||
@media only screen
|
||||
and (min-device-width : 768px)
|
||||
and (max-device-width : 1024px)
|
||||
and (orientation : portrait) {
|
||||
#main-content {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
||||
#sidebar-docs {
|
||||
flex: 3;
|
||||
h2 {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding: 0;
|
||||
li {
|
||||
padding: 10px 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
.docs-body {
|
||||
flex: 7;
|
||||
h2 {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.docs-content {
|
||||
padding: 0 0 80px;
|
||||
div.alert {
|
||||
padding: 20px 30px;
|
||||
}
|
||||
|
||||
code {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin: 0 -15px;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
ul {
|
||||
margin-top: 0;
|
||||
margin-left: 30px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#footer {
|
||||
padding: 20px 0 30px;
|
||||
.edit-page-link {
|
||||
top: -70px;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
line-height: 1.5;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
svg.logo {
|
||||
&.color {
|
||||
opacity: 1.0;
|
||||
|
||||
path.text {
|
||||
fill: $black;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
path.p-front {
|
||||
fill: #4DA7DD;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
path.p-back {
|
||||
fill: #3192D0;
|
||||
opacity: 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
// The default logo class is the colored version
|
||||
@extend .color;
|
||||
|
||||
&.white {
|
||||
opacity: 1.0;
|
||||
|
||||
path.text {
|
||||
fill: $white;
|
||||
}
|
||||
|
||||
path.p-front, path.p-back {
|
||||
fill: $white;
|
||||
}
|
||||
|
||||
path.p-back {
|
||||
opacity: 0.7;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
form, input, textarea, button {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
box-shadow: none;
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
-khtml-border-radius: 0;
|
||||
border-radius: 0;
|
||||
background-color: transparent;
|
||||
font-family: $font-family-mono;
|
||||
font-size: $base-font-size;
|
||||
line-height: 1.0;
|
||||
color: inherit;
|
||||
|
||||
&:focus {
|
||||
line-height: 1.0;
|
||||
box-shadow: none !important;
|
||||
outline: none;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
#sidebar-docs {
|
||||
min-height: 100%;
|
||||
max-width: 320px;
|
||||
$border: 1px solid $gray-dark;
|
||||
font-size: 16px;
|
||||
font-family: $font-family-mono;
|
||||
color: $gray-light;
|
||||
background-color: $sidebar-background-color;
|
||||
|
||||
|
||||
h2 {
|
||||
color: $green;
|
||||
text-transform: uppercase;
|
||||
padding: $docs-top-margin 20px 0;
|
||||
}
|
||||
|
||||
h4 {
|
||||
color: $white;
|
||||
text-transform: uppercase;
|
||||
margin-bottom: -10px;
|
||||
}
|
||||
|
||||
ul {
|
||||
@extend .padded-sm;
|
||||
|
||||
li {
|
||||
border-bottom: $border;
|
||||
padding: 15px 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
li > * {
|
||||
padding: auto 20px;
|
||||
margin-left: 20px;
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,173 +0,0 @@
|
|||
* {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
html,
|
||||
body {
|
||||
margin: 0;
|
||||
display: flex;
|
||||
min-height: 100vh;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
html {
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: $background;
|
||||
font-family: $font-family-open-sans;
|
||||
font-size: $base-font-size;
|
||||
font-weight: 400;
|
||||
line-height: $base-line-height;
|
||||
}
|
||||
|
||||
.home {
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: $font-family-klavika;
|
||||
letter-spacing: 1px;
|
||||
font-weight: normal;
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 42px;
|
||||
line-height: (80/70);
|
||||
@include respond-to(mobile) {
|
||||
font-size: 50px;
|
||||
line-height: (50/45);
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 36px;
|
||||
line-height: (50/40);
|
||||
text-transform: uppercase;
|
||||
|
||||
&.has-dividers {
|
||||
//overflow: auto !important;
|
||||
display: table-cell;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
@include respond-to(mobile) {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 24px;
|
||||
line-height: (30/20);
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-family: $font-family-mono;
|
||||
font-size: 20px;
|
||||
line-height: (30/20);
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 16px;
|
||||
line-height: (22/16);
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-family: $font-family-mono;
|
||||
font-size: 16px;
|
||||
line-height: (22/16);
|
||||
}
|
||||
|
||||
p {
|
||||
|
||||
&.large-text {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $green;
|
||||
|
||||
&:hover {
|
||||
color: darken($green, 30%);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: darken($green, 50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
dt {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
dd {
|
||||
font-size: 17px;
|
||||
line-height: 1.5;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
small, .small {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
hr {
|
||||
margin: ($baseline * 2) 0;
|
||||
border-color: $gray-mid;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
pre {
|
||||
background-color: $black;
|
||||
color: $white;
|
||||
margin: $baseline 0;
|
||||
}
|
||||
|
||||
table {
|
||||
font-family: $font-family-mono;
|
||||
margin: ($baseline * 2) 0;
|
||||
color: $gray-dark;
|
||||
|
||||
th {
|
||||
color: $black;
|
||||
font-weight: normal !important;
|
||||
padding-right: $baseline;
|
||||
}
|
||||
|
||||
td {
|
||||
padding-right: $baseline;
|
||||
}
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #ffff00; /* Safari */
|
||||
color: $black;
|
||||
}
|
||||
::-moz-selection {
|
||||
background: #ffff00; /* Firefox */
|
||||
color: $black;
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
pre.highlight code {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
<%= Rouge::Themes::Github.render(scope: ".highlight") %>
|
||||
|
||||
pre.highlight {
|
||||
border: 1px solid #CCCCCC;
|
||||
}
|
||||
|
||||
pre.highlight code span.c1 {
|
||||
font-style: normal;
|
||||
opacity: 0.8;
|
||||
}
|
|
@ -0,0 +1,58 @@
|
|||
// Colors
|
||||
$white: #FFFFFF;
|
||||
$black: #000000;
|
||||
$gray-darker: #555555;
|
||||
|
||||
$packer-blue: #1DAEFF;
|
||||
$packer-blue-dark: #1D94DD;
|
||||
$vagrant-blue: #1563FF;
|
||||
$vagrant-blue-dark: #104EB2;
|
||||
$vault-black: #000000;
|
||||
$vault-blue: #00ABE0;
|
||||
|
||||
// Typography
|
||||
$font-family-klavika: 'klavika-web', 'Open Sans', "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
$font-family-open-sans: 'Open Sans', "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
$font-family-monospace: 'Menlo', 'Monaco', 'Consolas', "Courier New", monospace;
|
||||
$font-size: 15px;
|
||||
$font-weight-reg: 400;
|
||||
$font-weight-bold: 600;
|
||||
|
||||
// Body
|
||||
$body-font-color: $gray-darker;
|
||||
$body-link-color: $packer-blue;
|
||||
|
||||
// Home
|
||||
$home-header-background-color: transparent;
|
||||
$home-header-link-color: $gray-darker;
|
||||
$home-header-link-color-hover: $black;
|
||||
|
||||
// Sidebar
|
||||
$sidebar-background-color: $white;
|
||||
$sidebar-font-size: $font-size - 2;
|
||||
$sidebar-link-color: $body-font-color;
|
||||
$sidebar-link-color-hover: $black;
|
||||
$sidebar-link-color-active: $body-link-color;
|
||||
$sidebar-font-family: $font-family-open-sans;
|
||||
$sidebar-font-weight: $font-weight-reg;
|
||||
|
||||
// Header
|
||||
$header-background-color: $packer-blue;
|
||||
$header-font-size: $font-size - 2;
|
||||
$header-height: 92px;
|
||||
$header-link-color: rgba($white, 0.85);
|
||||
$header-link-color-hover: $white;
|
||||
|
||||
// Footer
|
||||
$footer-font-size: $font-size - 2;
|
||||
$footer-link-color: $body-font-color;
|
||||
$footer-link-color-hover: $black;
|
||||
|
||||
// Buttons
|
||||
$button-background: $white;
|
||||
$button-font-color: #7b8A8E;
|
||||
$button-font-family: $font-family-klavika;
|
||||
$button-font-size: $font-size;
|
||||
$button-font-weight: $font-weight-bold;
|
||||
$button-primary-background: $packer-blue;
|
||||
$button-primary-font-color: $white;
|
|
@ -1,28 +1,33 @@
|
|||
@import "bootstrap-sprockets";
|
||||
@import "bootstrap";
|
||||
@import 'bootstrap-sprockets';
|
||||
@import 'bootstrap';
|
||||
|
||||
@import url("//fonts.googleapis.com/css?family=Inconsolata|Open+Sans:300,400,600");
|
||||
@import url('//fonts.googleapis.com/css?family=Open+Sans:400,600');
|
||||
|
||||
// Core variables and mixins
|
||||
@import '_variables';
|
||||
|
||||
// Mega Nav
|
||||
@import 'hashicorp/mega-nav';
|
||||
|
||||
@import "_helpers";
|
||||
@import "_reset";
|
||||
// Anchor links
|
||||
@import 'hashicorp/anchor-links';
|
||||
|
||||
@import "_columns";
|
||||
@import "_buttons";
|
||||
@import "_styles";
|
||||
// Sidebar
|
||||
@import 'hashicorp/sidebar';
|
||||
|
||||
// Hashicorp Shared Project Styles
|
||||
@import 'hashicorp-shared/_project-utility';
|
||||
@import 'hashicorp-shared/_hashicorp-utility';
|
||||
@import 'hashicorp-shared/_hashicorp-header';
|
||||
@import 'hashicorp-shared/_hashicorp-sidebar';
|
||||
// Global Site
|
||||
@import '_global';
|
||||
|
||||
@import "_header";
|
||||
@import "_footer";
|
||||
@import "_components";
|
||||
@import "_sidebar";
|
||||
// Components
|
||||
@import '_header';
|
||||
@import '_footer';
|
||||
@import '_inner';
|
||||
@import '_buttons';
|
||||
@import '_syntax';
|
||||
@import '_logos';
|
||||
|
||||
// Fix view on iPad
|
||||
@import "_ipad";
|
||||
// Pages
|
||||
@import '_community';
|
||||
@import '_docs';
|
||||
@import '_downloads';
|
||||
@import '_home';
|
||||
|
|
|
@ -1,336 +0,0 @@
|
|||
//
|
||||
// Hashicorp header
|
||||
// - Shared throughout projects
|
||||
// - Edits should not be made here
|
||||
// --------------------------------------------------
|
||||
|
||||
#header{
|
||||
position: relative;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
color: black;
|
||||
text-rendering: optimizeLegibility;
|
||||
transition: all 1s ease;
|
||||
|
||||
&.white{
|
||||
.navbar-brand {
|
||||
.logo {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
.main-links,
|
||||
.external-links {
|
||||
li > a {
|
||||
&:hover{
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.black{
|
||||
.navbar-brand {
|
||||
.logo {
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
|
||||
.main-links,
|
||||
.external-links {
|
||||
li > a {
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-toggle{
|
||||
height: $header-height;
|
||||
margin: 0;
|
||||
border-radius: 0;
|
||||
.icon-bar{
|
||||
border: 1px solid $black;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.external-links {
|
||||
&.white{
|
||||
svg path{
|
||||
fill: $white;
|
||||
}
|
||||
}
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
|
||||
svg path{
|
||||
@include transition( all 300ms ease-in );
|
||||
}
|
||||
|
||||
&:hover{
|
||||
svg path{
|
||||
@include transition( all 300ms ease-in );
|
||||
}
|
||||
}
|
||||
|
||||
@include project-svg-external-links-style();
|
||||
|
||||
&.download{
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
> a {
|
||||
padding-left: 12px !important;
|
||||
svg{
|
||||
position: absolute;
|
||||
left: -12px;
|
||||
top: 50%;
|
||||
margin-top: -7px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-links{
|
||||
margin-right: $nav-margin-right * 2;
|
||||
}
|
||||
|
||||
.main-links,
|
||||
.external-links {
|
||||
&.white{
|
||||
li > a {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
li > a {
|
||||
@include hashi-a-style();
|
||||
margin: 0 10px;
|
||||
padding-top: 1px;
|
||||
line-height: $header-height;
|
||||
@include project-a-style();
|
||||
}
|
||||
}
|
||||
|
||||
.nav > li > a:hover, .nav > li > a:focus {
|
||||
background-color: transparent;
|
||||
@include transition( all 300ms ease-in );
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
display: block;
|
||||
height: $header-height;
|
||||
padding: 0;
|
||||
margin: 0 10px 0 0;
|
||||
|
||||
.logo{
|
||||
display: inline-block;
|
||||
height: $header-height;
|
||||
vertical-align:top;
|
||||
padding: 0;
|
||||
line-height: $header-height;
|
||||
padding-left: $project-logo-width + $project-logo-pad-left;
|
||||
background-position: 0 center;
|
||||
@include transition(all 300ms ease-in);
|
||||
|
||||
&:hover{
|
||||
@include transition(all 300ms ease-in);
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-toggle{
|
||||
&.white{
|
||||
.icon-bar{
|
||||
border: 1px solid white;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.by-hashicorp{
|
||||
display: inline-block;
|
||||
vertical-align:top;
|
||||
height: $header-height;
|
||||
margin-left: 3px;
|
||||
padding-top: 2px;
|
||||
color: black;
|
||||
line-height: $header-height;
|
||||
font-family: $header-font-family;
|
||||
font-weight: 600;
|
||||
font-size: 0;
|
||||
text-decoration: none;
|
||||
|
||||
&.white{
|
||||
color: white;
|
||||
font-weight: 300;
|
||||
svg{
|
||||
path,
|
||||
polygon,
|
||||
rect{
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover{
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover{
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.svg-wrap{
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
svg{
|
||||
&.svg-by{
|
||||
width: $by-hashicorp-width;
|
||||
height: $by-hashicorp-height;
|
||||
margin-bottom: -4px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
&.svg-logo{
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-bottom: -3px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
path,
|
||||
polygon{
|
||||
fill: black;
|
||||
@include transition(all 300ms ease-in);
|
||||
|
||||
&:hover{
|
||||
@include transition(all 300ms ease-in);
|
||||
}
|
||||
}
|
||||
.svg-bg-line{
|
||||
@include transition(all 300ms ease-in);
|
||||
|
||||
&:hover{
|
||||
@include transition(all 300ms ease-in);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.hashicorp-project{
|
||||
display: inline-block;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
text-decoration: none;
|
||||
font-size: 14px;
|
||||
color: $black;
|
||||
font-weight: 600;
|
||||
|
||||
&.white{
|
||||
color: white;
|
||||
svg{
|
||||
path,
|
||||
polygon,
|
||||
rect{
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover{
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
span{
|
||||
margin-right: 4px;
|
||||
font-family: $header-font-family;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
span,
|
||||
svg{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
svg{
|
||||
&.svg-by{
|
||||
width: $by-hashicorp-width;
|
||||
height: $by-hashicorp-height;
|
||||
margin-bottom: -4px;
|
||||
margin-left: -3px;
|
||||
}
|
||||
|
||||
&.svg-logo{
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-bottom: -10px;
|
||||
margin-left: -1px;
|
||||
}
|
||||
|
||||
path,
|
||||
line{
|
||||
fill: $black;
|
||||
@include transition(all 300ms ease-in);
|
||||
|
||||
&:hover{
|
||||
@include transition(all 300ms ease-in);
|
||||
}
|
||||
}
|
||||
|
||||
.svg-bg-line{
|
||||
@include transition(all 300ms ease-in);
|
||||
|
||||
&:hover{
|
||||
@include transition(all 300ms ease-in);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 480px) {
|
||||
.navigation {
|
||||
.main-links{
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 414px) {
|
||||
#header {
|
||||
.navbar-toggle{
|
||||
padding-top: 10px;
|
||||
height: $header-mobile-height;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
height: $header-mobile-height;
|
||||
|
||||
.logo{
|
||||
height: $header-mobile-height;
|
||||
line-height: $header-mobile-height;
|
||||
}
|
||||
.by-hashicorp{
|
||||
height: $header-mobile-height;
|
||||
line-height: $header-mobile-height;
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
.main-links,
|
||||
.external-links {
|
||||
li > a {
|
||||
line-height: $header-mobile-height;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,293 +0,0 @@
|
|||
//
|
||||
// Hashicorp Sidebar
|
||||
// - Shared throughout projects
|
||||
// - Edits should not be made here
|
||||
// --------------------------------------------------
|
||||
|
||||
// Base variables
|
||||
// --------------------------------------------------
|
||||
$screen-tablet: 768px;
|
||||
|
||||
$gray-darker: #212121; // #212121 - text
|
||||
$gray-secondary: #757575; // #757575 - secondary text, icons
|
||||
$gray: #bdbdbd; // #bdbdbd - hint text
|
||||
$gray-light: #e0e0e0; // #e0e0e0 - divider
|
||||
$gray-lighter: #f5f5f5; // #f5f5f5 - background
|
||||
$link-color: $gray-darker;
|
||||
$link-bg: transparent;
|
||||
$link-hover-color: $gray-lighter;
|
||||
$link-hover-bg: $gray-lighter;
|
||||
$link-active-color: $gray-darker;
|
||||
$link-active-bg: $gray-light;
|
||||
$link-disabled-color: $gray-light;
|
||||
$link-disabled-bg: transparent;
|
||||
|
||||
/* -- Sidebar style ------------------------------- */
|
||||
|
||||
// Sidebar variables
|
||||
// --------------------------------------------------
|
||||
$zindex-sidebar-fixed: 1035;
|
||||
|
||||
$sidebar-desktop-width: 280px;
|
||||
$sidebar-width: 240px;
|
||||
|
||||
$sidebar-padding: 16px;
|
||||
$sidebar-divider: $sidebar-padding/2;
|
||||
|
||||
$sidebar-icon-width: 40px;
|
||||
$sidebar-icon-height: 20px;
|
||||
|
||||
@mixin sidebar-nav-base {
|
||||
text-align: center;
|
||||
|
||||
&:last-child{
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
li > a {
|
||||
background-color: $link-bg;
|
||||
}
|
||||
li:hover > a {
|
||||
background-color: $link-hover-bg;
|
||||
}
|
||||
li:focus > a, li > a:focus {
|
||||
background-color: $link-bg;
|
||||
}
|
||||
|
||||
> .open > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: $link-hover-bg;
|
||||
}
|
||||
}
|
||||
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: $link-active-bg;
|
||||
}
|
||||
}
|
||||
> .disabled > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: $link-disabled-bg;
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown menu items
|
||||
> .dropdown {
|
||||
// Remove background color from open dropdown
|
||||
> .dropdown-menu {
|
||||
background-color: $link-hover-bg;
|
||||
|
||||
> li > a {
|
||||
&:focus {
|
||||
background-color: $link-hover-bg;
|
||||
}
|
||||
&:hover {
|
||||
background-color: $link-hover-bg;
|
||||
}
|
||||
}
|
||||
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $link-active-color;
|
||||
background-color: $link-active-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Sidebar
|
||||
// --------------------------------------------------
|
||||
|
||||
// Sidebar Elements
|
||||
//
|
||||
// Basic style of sidebar elements
|
||||
.sidebar {
|
||||
position: relative;
|
||||
display: block;
|
||||
min-height: 100%;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
border: none;
|
||||
@include transition(all 0.5s cubic-bezier(0.55, 0, 0.1, 1));
|
||||
@include clearfix();
|
||||
background-color: $white;
|
||||
|
||||
ul{
|
||||
padding-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.sidebar-divider, .divider {
|
||||
width: 80%;
|
||||
height: 1px;
|
||||
margin: 8px auto;
|
||||
background-color: lighten($gray, 20%);
|
||||
}
|
||||
|
||||
// Sidebar heading
|
||||
//----------------
|
||||
.sidebar-header {
|
||||
position: relative;
|
||||
margin-bottom: $sidebar-padding;
|
||||
@include transition(all .2s ease-in-out);
|
||||
}
|
||||
|
||||
.sidebar-image {
|
||||
padding-top: 24px;
|
||||
img {
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Sidebar icons
|
||||
//----------------
|
||||
.sidebar-icon {
|
||||
display: inline-block;
|
||||
height: $sidebar-icon-height;
|
||||
margin-right: $sidebar-divider;
|
||||
text-align: left;
|
||||
font-size: $sidebar-icon-height;
|
||||
vertical-align: middle;
|
||||
|
||||
&:before, &:after {
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-nav {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
@include sidebar-nav-base();
|
||||
|
||||
// Links
|
||||
//----------------
|
||||
li {
|
||||
position: relative;
|
||||
list-style-type: none;
|
||||
text-align: center;
|
||||
|
||||
a {
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
@include hashi-a-style-core();
|
||||
|
||||
svg{
|
||||
top: 2px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
margin-bottom: -2px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Sidebar toggling
|
||||
//
|
||||
// Hide sidebar
|
||||
.sidebar {
|
||||
width: 0;
|
||||
@include translate3d(-$sidebar-desktop-width, 0, 0);
|
||||
|
||||
&.open {
|
||||
min-width: $sidebar-desktop-width;
|
||||
width: $sidebar-desktop-width;
|
||||
@include translate3d(0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
// Sidebar positions: fix the left/right sidebars
|
||||
.sidebar-fixed-left,
|
||||
.sidebar-fixed-right,
|
||||
.sidebar-stacked {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
z-index: $zindex-sidebar-fixed;
|
||||
}
|
||||
.sidebar-stacked {
|
||||
left: 0;
|
||||
}
|
||||
.sidebar-fixed-left {
|
||||
left: 0;
|
||||
box-shadow: 2px 0px 25px rgba(0,0,0,0.15);
|
||||
-webkit-box-shadow: 2px 0px 25px rgba(0,0,0,0.15);
|
||||
}
|
||||
.sidebar-fixed-right {
|
||||
right: 0;
|
||||
box-shadow: 0px 2px 25px rgba(0,0,0,0.15);
|
||||
-webkit-box-shadow: 0px 2px 25px rgba(0,0,0,0.15);
|
||||
|
||||
@include translate3d($sidebar-desktop-width, 0, 0);
|
||||
&.open {
|
||||
@include translate3d(0, 0, 0);
|
||||
}
|
||||
.icon-material-sidebar-arrow:before {
|
||||
content: "\e614"; // icon-material-arrow-forward
|
||||
}
|
||||
}
|
||||
|
||||
// Sidebar size
|
||||
//
|
||||
// Change size of sidebar and sidebar elements on small screens
|
||||
@media (max-width: $screen-tablet) {
|
||||
.sidebar.open {
|
||||
min-width: $sidebar-width;
|
||||
width: $sidebar-width;
|
||||
}
|
||||
|
||||
.sidebar .sidebar-header {
|
||||
//height: $sidebar-width * 9/16; // 16:9 header dimension
|
||||
}
|
||||
|
||||
.sidebar .sidebar-image {
|
||||
/* img {
|
||||
width: $sidebar-width/4 - $sidebar-padding;
|
||||
height: $sidebar-width/4 - $sidebar-padding;
|
||||
} */
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-overlay {
|
||||
visibility: hidden;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
opacity: 0;
|
||||
background: $white;
|
||||
z-index: $zindex-sidebar-fixed - 1;
|
||||
|
||||
-webkit-transition: visibility 0 linear .4s,opacity .4s cubic-bezier(.4,0,.2,1);
|
||||
-moz-transition: visibility 0 linear .4s,opacity .4s cubic-bezier(.4,0,.2,1);
|
||||
transition: visibility 0 linear .4s,opacity .4s cubic-bezier(.4,0,.2,1);
|
||||
-webkit-transform: translateZ(0);
|
||||
-moz-transform: translateZ(0);
|
||||
-ms-transform: translateZ(0);
|
||||
-o-transform: translateZ(0);
|
||||
transform: translateZ(0);
|
||||
}
|
||||
|
||||
.sidebar-overlay.active {
|
||||
opacity: 0.3;
|
||||
visibility: visible;
|
||||
-webkit-transition-delay: 0;
|
||||
-moz-transition-delay: 0;
|
||||
transition-delay: 0;
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
//
|
||||
// Hashicorp Nav (header/footer) Utiliy Vars and Mixins
|
||||
//
|
||||
// Notes:
|
||||
// - Include this in Application.scss before header and feature-footer
|
||||
// - Open Sans Google (Semibold - 600) font needs to be included if not already
|
||||
// --------------------------------------------------
|
||||
|
||||
// Variables
|
||||
$font-family-open-sans: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
$header-font-family: $font-family-open-sans;
|
||||
$header-font-weight: 600; // semi-bold
|
||||
|
||||
$header-height: 74px;
|
||||
$header-mobile-height: 60px;
|
||||
$by-hashicorp-width: 74px;
|
||||
$by-hashicorp-height: 16px;
|
||||
$nav-margin-right: 12px;
|
||||
|
||||
// Mixins
|
||||
@mixin hashi-a-style-core{
|
||||
font-family: $header-font-family;
|
||||
font-weight: $header-font-weight;
|
||||
font-size: 14px;
|
||||
//letter-spacing: 0.0625em;
|
||||
}
|
||||
|
||||
@mixin hashi-a-style{
|
||||
margin: 0 15px;
|
||||
padding: 0;
|
||||
line-height: 22px;
|
||||
@include hashi-a-style-core();
|
||||
@include transition( all 300ms ease-in );
|
||||
|
||||
&:hover{
|
||||
@include transition( all 300ms ease-in );
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
|
||||
//general shared project mixins
|
||||
@mixin img-retina($image1x, $image, $width, $height) {
|
||||
background-image: url($image1x);
|
||||
background-size: $width $height;
|
||||
background-repeat: no-repeat;
|
||||
|
||||
@media (min--moz-device-pixel-ratio: 1.3),
|
||||
(-o-min-device-pixel-ratio: 2.6/2),
|
||||
(-webkit-min-device-pixel-ratio: 1.3),
|
||||
(min-device-pixel-ratio: 1.3),
|
||||
(min-resolution: 1.3dppx) {
|
||||
/* on retina, use image that's scaled by 2 */
|
||||
background-image: url($image);
|
||||
background-size: $width $height;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// -------------------------
|
||||
@mixin anti-alias() {
|
||||
text-rendering: optimizeLegibility;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
@mixin open-light() {
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
@mixin open() {
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
@mixin open-sb() {
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
@mixin open-bold() {
|
||||
font-family: $font-family-open-sans;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
@mixin bez-1-transition{
|
||||
@include transition( all 300ms ease-in-out );
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
//
|
||||
// Mixins Specific to project
|
||||
// - make edits to mixins here
|
||||
// --------------------------------------------------
|
||||
|
||||
// Variables
|
||||
$project-logo-width: 24px;
|
||||
$project-logo-height: 34px;
|
||||
$project-logo-pad-left: 8px;
|
||||
|
||||
// Mixins
|
||||
@mixin project-a-style{
|
||||
color: $green;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0;
|
||||
|
||||
&:hover{
|
||||
color: $white;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin project-footer-a-style{
|
||||
color: $black;
|
||||
font-weight: 400;
|
||||
|
||||
&:hover{
|
||||
color: $green;
|
||||
|
||||
svg path{
|
||||
fill: $green;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin project-footer-a-subpage-style{
|
||||
color: $white;
|
||||
font-weight: 400;
|
||||
|
||||
svg path{
|
||||
fill: $white;
|
||||
}
|
||||
|
||||
&:hover{
|
||||
color: $green;
|
||||
|
||||
svg path{
|
||||
fill: $green;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin project-svg-external-links-style{
|
||||
svg path{
|
||||
fill: $green;
|
||||
}
|
||||
|
||||
&:hover{
|
||||
svg path{
|
||||
fill: $green;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin project-by-hashicorp-style{
|
||||
&:hover{
|
||||
line{
|
||||
stroke: $green;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,118 @@
|
|||
---
|
||||
layout: "inner"
|
||||
page_title: "Community"
|
||||
description: |-
|
||||
Packer is an open source project with a growing community.
|
||||
---
|
||||
|
||||
<h1>Community</h1>
|
||||
<p>
|
||||
Packer is an open source project with a growing community. There are
|
||||
active, dedicated users willing to help you through various mediums.
|
||||
</p>
|
||||
<p>
|
||||
<strong>IRC:</strong> <code>#packer-tool</code> on Freenode
|
||||
</p>
|
||||
<p>
|
||||
<strong>Announcement list:</strong>
|
||||
<a href="https://groups.google.com/group/hashicorp-announce">HashiCorp Announcement Google Group</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Discussion list:</strong>
|
||||
<a href="https://groups.google.com/group/packer-tool">Packer Google Group</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Bug Tracker:</strong>
|
||||
<a href="https://github.com/mitchellh/packer/issues">Issue tracker
|
||||
on GitHub</a>. Please only use this for reporting bugs. Do not ask
|
||||
for general help here. Use IRC or the mailing list for that.
|
||||
</p>
|
||||
<p>
|
||||
<strong>Training:</strong>
|
||||
Paid <a href="https://www.hashicorp.com/training.html">HashiCorp training courses</a>
|
||||
are also available in a city near you. Private training courses are also available.
|
||||
</p>
|
||||
<h1>People</h1>
|
||||
<p>
|
||||
The following people are some of the faces behind Packer. They each
|
||||
contribute to Packer in some core way. Over time, faces may appear and
|
||||
disappear from this list as contributors come and go. In addition to
|
||||
the faces below, Packer is a project by
|
||||
<a href="https://www.hashicorp.com">HashiCorp</a>, so many HashiCorp
|
||||
employees actively contribute to Packer.
|
||||
</p>
|
||||
<div class="people">
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/54079122b67de9677c1f93933ce8b63a.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Mitchell Hashimoto (<a href="https://github.com/mitchellh">@mitchellh</a>)</h3>
|
||||
<p>
|
||||
Mitchell Hashimoto is the creator of Packer. He developed the
|
||||
core of Packer as well as the Amazon, VirtualBox, and VMware
|
||||
builders. In addition to Packer, Mitchell is the creator of
|
||||
<a href="https://www.vagrantup.com">Vagrant</a>. He is self
|
||||
described as "automation obsessed."
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/2acc31dd6370a54b18f6755cd0710ce6.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Jack Pearkes (<a href="https://github.com/pearkes">@pearkes</a>)</h3>
|
||||
<p>
|
||||
<a href="http://jack.ly/">Jack Pearkes</a> created and maintains the DigitalOcean builder
|
||||
for Packer. Outside of Packer, Jack is an avid open source
|
||||
contributor and software consultant.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/2f7fc9cb7558e3ea48f5a86fa90a78da.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Mark Peek (<a href="https://github.com/markpeek">@markpeek</a>)</h3>
|
||||
<p>
|
||||
In addition to Packer, Mark Peek helps maintain
|
||||
various open source projects such as
|
||||
<a href="https://github.com/cloudtools">cloudtools</a> and
|
||||
<a href="https://github.com/ironport">IronPort Python libraries</a>.
|
||||
Mark is also a <a href="https://FreeBSD.org">FreeBSD committer</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/1fca64df3d7db1e2f258a8956d2b0aff.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Ross Smith II (<a href="https://github.com/rasa" target="_blank" rel="nofollow noopener noreferrer">@rasa</a>)</h3>
|
||||
<p>
|
||||
<a href="http://smithii.com/" target="_blank" rel="nofollow noopener noreferrer">Ross Smith</a> maintains our
|
||||
VMware builder on Windows, and provides other valuable assistance. Ross is an
|
||||
open source enthusiast, published author, and freelance consultant.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/c9f6bf7b5b865012be5eded656ebed7d.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Rickard von Essen<br/>(<a href="https://github.com/rickard-von-essen" target="_blank" rel="nofollow noopener noreferrer">@rickard-von-essen</a>)</h3>
|
||||
<p>
|
||||
Rickard von Essen maintains our Parallels Desktop builder. Rickard is an
|
||||
polyglot programmer and consults on Continuous Delivery.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="person">
|
||||
<img class="pull-left" src="https://secure.gravatar.com/avatar/f1695dcf6a21f90f5db84b2eee2cbdbe?s=125">
|
||||
<div class="bio">
|
||||
<h3>Matt Hooker (<a href="https://github.com/mwhooker" target="_blank" rel="nofollow noopener noreferrer">@mwhooker</a>)</h3>
|
||||
<p><a href="https://twitter.com/mwhooker" target="_blank" rel="nofollow
|
||||
noopener noreferrer">Matt</a> maintains Packer for HashiCorp. After
|
||||
picking up Chef for a job, he decided that continually provisioning the
|
||||
same machine was bound for trouble. Luckily Packer had just been created,
|
||||
and was the answer to his prayers. Now he works on it professionally, and
|
||||
couldn't be happier.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix">
|
||||
</div>
|
||||
</div>
|
|
@ -1,125 +0,0 @@
|
|||
---
|
||||
description: |
|
||||
Packer is a new project with a growing community. Despite this, there are
|
||||
dedicated users willing to help through various mediums.
|
||||
layout: community
|
||||
page_title: Community
|
||||
---
|
||||
|
||||
# Community
|
||||
|
||||
Packer is a new project with a growing community. Despite this, there are
|
||||
dedicated users willing to help through various mediums.
|
||||
|
||||
**IRC:** `#packer-tool` on Freenode.
|
||||
|
||||
**Mailing List:** [Packer Google
|
||||
Group](https://groups.google.com/group/packer-tool)
|
||||
|
||||
**Bug Tracker:** [Issue tracker on
|
||||
GitHub](https://github.com/mitchellh/packer/issues). Please only use this for
|
||||
reporting bugs. Do not ask for general help here. Use IRC or the mailing list
|
||||
for that.
|
||||
|
||||
## People
|
||||
|
||||
The following people are some of the faces behind Packer. They each contribute
|
||||
to Packer in some core way. Over time, faces may appear and disappear from this
|
||||
list as contributors come and go.
|
||||
|
||||
<div class="people">
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/54079122b67de9677c1f93933ce8b63a.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Mitchell Hashimoto (<a href="https://github.com/mitchellh">@mitchellh</a>)</h3>
|
||||
<p>
|
||||
Mitchell Hashimoto is the creator of Packer. He developed the
|
||||
core of Packer as well as the Amazon, VirtualBox, and VMware
|
||||
builders. In addition to Packer, Mitchell is the creator of
|
||||
<a href="https://www.vagrantup.com">Vagrant</a>. He is self
|
||||
described as "automation obsessed."
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/2acc31dd6370a54b18f6755cd0710ce6.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Jack Pearkes (<a href="https://github.com/pearkes">@pearkes</a>)</h3>
|
||||
<p>
|
||||
<a href="http://jack.ly/">Jack Pearkes</a> created and maintains the DigitalOcean builder
|
||||
for Packer. Outside of Packer, Jack is an avid open source
|
||||
contributor and software consultant.</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/2f7fc9cb7558e3ea48f5a86fa90a78da.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Mark Peek (<a href="https://github.com/markpeek">@markpeek</a>)</h3>
|
||||
<p>
|
||||
In addition to Packer, Mark Peek helps maintain
|
||||
various open source projects such as
|
||||
<a href="https://github.com/cloudtools">cloudtools</a> and
|
||||
<a href="https://github.com/ironport">IronPort Python libraries</a>.
|
||||
Mark is also a <a href="https://FreeBSD.org">FreeBSD committer</a>.</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/1fca64df3d7db1e2f258a8956d2b0aff.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Ross Smith II (<a href="https://github.com/rasa" target="_blank" rel="nofollow noopener noreferrer">@rasa</a>)</h3>
|
||||
<p>
|
||||
|
||||
<a href="http://smithii.com/" target="_blank" rel="nofollow noopener noreferrer">Ross Smith</a> maintains our
|
||||
VMware builder on Windows, and provides other valuable assistance. Ross is an
|
||||
open source enthusiast, published author, and freelance consultant.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://www.gravatar.com/avatar/c9f6bf7b5b865012be5eded656ebed7d.png?s=125">
|
||||
<div class="bio">
|
||||
<h3>Rickard von Essen<br/>(<a href="https://github.com/rickard-von-essen" target="_blank" rel="nofollow noopener noreferrer">@rickard-von-essen</a>)</h3>
|
||||
<p>
|
||||
|
||||
Rickard von Essen maintains our Parallels Desktop builder. Rickard is an
|
||||
polyglot programmer and consults on Continuous Delivery.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="person">
|
||||
|
||||
<img class="pull-left" src="https://secure.gravatar.com/avatar/f1695dcf6a21f90f5db84b2eee2cbdbe?s=125">
|
||||
<div class="bio">
|
||||
<h3>Matt Hooker (<a href="https://github.com/mwhooker" target="_blank" rel="nofollow noopener noreferrer">@mwhooker</a>)</h3>
|
||||
<p><a href="https://twitter.com/mwhooker" target="_blank" rel="nofollow
|
||||
noopener noreferrer">Matt</a> maintains Packer for HashiCorp. After
|
||||
picking up Chef for a job, he decided that continually provisioning the
|
||||
same machine was bound for trouble. Luckily Packer had just been created,
|
||||
and was the answer to his prayers. Now he works on it professionally, and
|
||||
couldn't be happier.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="clearfix">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
description: |
|
||||
There are a handful of terms used throughout the Packer documentation where the
|
||||
meaning may not be immediately obvious if you haven't used Packer before.
|
||||
Luckily, there are relatively few. This page documents all the terminology
|
||||
required to understand and use Packer. The terminology is in alphabetical order
|
||||
for easy referencing.
|
||||
layout: docs
|
||||
page_title: Packer Terminology
|
||||
...
|
||||
page_title: Terminology
|
||||
description: |-
|
||||
There are a handful of terms used throughout the Packer documentation where
|
||||
the meaning may not be immediately obvious if you haven't used Packer before.
|
||||
Luckily, there are relatively few. This page documents all the terminology
|
||||
required to understand and use Packer. The terminology is in alphabetical
|
||||
order for easy referencing.
|
||||
---
|
||||
|
||||
# Packer Terminology
|
||||
|
||||
|
@ -17,40 +17,39 @@ Luckily, there are relatively few. This page documents all the terminology
|
|||
required to understand and use Packer. The terminology is in alphabetical order
|
||||
for easy referencing.
|
||||
|
||||
- `Artifacts` are the results of a single build, and are usually a set of IDs
|
||||
or files to represent a machine image. Every builder produces a
|
||||
single artifact. As an example, in the case of the Amazon EC2 builder, the
|
||||
artifact is a set of AMI IDs (one per region). For the VMware builder, the
|
||||
artifact is a directory of files comprising the created virtual machine.
|
||||
- `Artifacts` are the results of a single build, and are usually a set of IDs or
|
||||
files to represent a machine image. Every builder produces a single artifact.
|
||||
As an example, in the case of the Amazon EC2 builder, the artifact is a set of
|
||||
AMI IDs (one per region). For the VMware builder, the artifact is a directory
|
||||
of files comprising the created virtual machine.
|
||||
|
||||
- `Builds` are a single task that eventually produces an image for a
|
||||
single platform. Multiple builds run in parallel. Example usage in a
|
||||
sentence: "The Packer build produced an AMI to run our web application." Or:
|
||||
"Packer is running the builds now for VMware, AWS, and VirtualBox."
|
||||
- `Builds` are a single task that eventually produces an image for a single
|
||||
platform. Multiple builds run in parallel. Example usage in a sentence: "The
|
||||
Packer build produced an AMI to run our web application." Or: "Packer is
|
||||
running the builds now for VMware, AWS, and VirtualBox."
|
||||
|
||||
- `Builders` are components of Packer that are able to create a machine image
|
||||
for a single platform. Builders read in some configuration and use that to
|
||||
run and generate a machine image. A builder is invoked as part of a build in
|
||||
order to create the actual resulting images. Example builders include
|
||||
VirtualBox, VMware, and Amazon EC2. Builders can be created and added to
|
||||
Packer in the form of plugins.
|
||||
for a single platform. Builders read in some configuration and use that to run
|
||||
and generate a machine image. A builder is invoked as part of a build in order
|
||||
to create the actual resulting images. Example builders include VirtualBox,
|
||||
VMware, and Amazon EC2. Builders can be created and added to Packer in the
|
||||
form of plugins.
|
||||
|
||||
- `Commands` are sub-commands for the `packer` program that perform some job.
|
||||
An example command is "build", which is invoked as `packer build`. Packer
|
||||
ships with a set of commands out of the box in order to define its
|
||||
command-line interface.
|
||||
- `Commands` are sub-commands for the `packer` program that perform some job. An
|
||||
example command is "build", which is invoked as `packer build`. Packer ships
|
||||
with a set of commands out of the box in order to define its command-line
|
||||
interface.
|
||||
|
||||
- `Post-processors` are components of Packer that take the result of a builder
|
||||
or another post-processor and process that to create a new artifact.
|
||||
Examples of post-processors are compress to compress artifacts, upload to
|
||||
upload artifacts, etc.
|
||||
or another post-processor and process that to create a new artifact. Examples
|
||||
of post-processors are compress to compress artifacts, upload to upload
|
||||
artifacts, etc.
|
||||
|
||||
- `Provisioners` are components of Packer that install and configure software
|
||||
within a running machine prior to that machine being turned into a
|
||||
static image. They perform the major work of making the image contain
|
||||
useful software. Example provisioners include shell scripts, Chef,
|
||||
Puppet, etc.
|
||||
within a running machine prior to that machine being turned into a static
|
||||
image. They perform the major work of making the image contain useful
|
||||
software. Example provisioners include shell scripts, Chef, Puppet, etc.
|
||||
|
||||
- `Templates` are JSON files which define one or more builds by configuring
|
||||
the various components of Packer. Packer is able to read a template and use
|
||||
that information to create multiple machine images in parallel.
|
||||
- `Templates` are JSON files which define one or more builds by configuring the
|
||||
various components of Packer. Packer is able to read a template and use that
|
||||
information to create multiple machine images in parallel.
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
---
|
||||
description: |
|
||||
The `amazon-chroot` Packer builder is able to create Amazon AMIs backed by an
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-amazon-chroot
|
||||
page_title: Amazon chroot - Builders
|
||||
description: |-
|
||||
The amazon-chroot Packer builder is able to create Amazon AMIs backed by an
|
||||
EBS volume as the root device. For more information on the difference between
|
||||
instance storage and EBS-backed instances, storage for the root device section
|
||||
in the EC2 documentation.
|
||||
layout: docs
|
||||
page_title: 'Amazon AMI Builder (chroot)'
|
||||
---
|
||||
|
||||
# AMI Builder (chroot)
|
||||
|
@ -23,7 +24,7 @@ builder is able to build an EBS-backed AMI without launching a new EC2 instance.
|
|||
This can dramatically speed up AMI builds for organizations who need the extra
|
||||
fast build.
|
||||
|
||||
\~> **This is an advanced builder** If you're just getting started with
|
||||
~> **This is an advanced builder** If you're just getting started with
|
||||
Packer, we recommend starting with the [amazon-ebs
|
||||
builder](/docs/builders/amazon-ebs.html), which is much easier to use.
|
||||
|
||||
|
@ -68,9 +69,9 @@ each category, the available configuration keys are alphabetized.
|
|||
how to set this.](/docs/builders/amazon.html#specifying-amazon-credentials)
|
||||
|
||||
- `source_ami` (string) - The source AMI whose root volume will be copied and
|
||||
provisioned on the currently running instance. This must be an EBS-backed
|
||||
AMI with a root volume snapshot that you have access to. Note: this is not
|
||||
used when `from_scratch` is set to true.
|
||||
provisioned on the currently running instance. This must be an EBS-backed AMI
|
||||
with a root volume snapshot that you have access to. Note: this is not used
|
||||
when `from_scratch` is set to true.
|
||||
|
||||
### Optional:
|
||||
|
||||
|
@ -241,7 +242,7 @@ each category, the available configuration keys are alphabetized.
|
|||
- `source_ami_filter` (object) - Filters used to populate the `source_ami` field.
|
||||
Example:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
"source_ami_filter": {
|
||||
"filters": {
|
||||
"virtualization-type": "hvm",
|
||||
|
@ -279,7 +280,7 @@ each category, the available configuration keys are alphabetized.
|
|||
|
||||
Here is a basic example. It is completely valid except for the access keys:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "amazon-chroot",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -306,7 +307,7 @@ However, if you want to change or add the mount points, you may using the
|
|||
`chroot_mounts` configuration. Here is an example configuration which only
|
||||
mounts `/prod` and `/dev`:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"chroot_mounts": [
|
||||
["proc", "proc", "/proc"],
|
||||
|
@ -346,7 +347,7 @@ For debian based distributions you can setup a
|
|||
file which will prevent packages installed by your provisioners from starting
|
||||
services:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
|
@ -374,7 +375,7 @@ The device setup commands partition the device with one partition for use as an
|
|||
HVM image and format it ext4. This builder block should be followed by
|
||||
provisioning commands to install the os and bootloader.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "amazon-chroot",
|
||||
"ami_name": "packer-from-scratch {{timestamp}}",
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
---
|
||||
description: |
|
||||
The `amazon-ebs` Packer builder is able to create Amazon AMIs backed by EBS
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-amazon-ebsbacked
|
||||
page_title: Amazon EBS - Builders
|
||||
description: |-
|
||||
The amazon-ebs Packer builder is able to create Amazon AMIs backed by EBS
|
||||
volumes for use in EC2. For more information on the difference between
|
||||
EBS-backed instances and instance-store backed instances, see the storage for
|
||||
the root device section in the EC2 documentation.
|
||||
layout: docs
|
||||
page_title: 'Amazon AMI Builder (EBS backed)'
|
||||
...
|
||||
---
|
||||
|
||||
# AMI Builder (EBS backed)
|
||||
|
||||
|
@ -149,7 +150,7 @@ builder.
|
|||
stop the instance and will wait for you to stop it manually. You can do this
|
||||
with a [windows-shell provisioner](https://www.packer.io/docs/provisioners/windows-shell.html).
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "windows-shell",
|
||||
"inline": ["\"c:\\Program Files\\Amazon\\Ec2ConfigService\\ec2config.exe\" -sysprep"]
|
||||
|
@ -235,7 +236,8 @@ builder.
|
|||
- `source_ami_filter` (object) - Filters used to populate the `source_ami` field.
|
||||
Example:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"source_ami_filter": {
|
||||
"filters": {
|
||||
"virtualization-type": "hvm",
|
||||
|
@ -245,6 +247,7 @@ builder.
|
|||
"owners": ["099720109477"],
|
||||
"most_recent": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical.
|
||||
|
@ -332,7 +335,7 @@ builder.
|
|||
Here is a basic example. You will need to provide access keys, and may need to
|
||||
change the AMI IDs according to what images exist at the time the template is run:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "amazon-ebs",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -345,7 +348,7 @@ change the AMI IDs according to what images exist at the time the template is ru
|
|||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
environmental variables. See the configuration reference in the section above
|
||||
for more information on what environmental variables Packer will look for.
|
||||
|
||||
|
@ -369,7 +372,7 @@ configuration of `launch_block_device_mappings` will expand the root volume
|
|||
`ami_block_device_mappings` AWS will attach additional volumes `/dev/sdb` and
|
||||
`/dev/sdc` when we boot a new instance of our AMI.
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "amazon-ebs",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -379,12 +382,14 @@ configuration of `launch_block_device_mappings` will expand the root volume
|
|||
"instance_type": "t2.micro",
|
||||
"ssh_username": "ubuntu",
|
||||
"ami_name": "packer-quick-start {{timestamp}}",
|
||||
"launch_block_device_mappings": [{
|
||||
"launch_block_device_mappings": [
|
||||
{
|
||||
"device_name": "/dev/sda1",
|
||||
"volume_size": 40,
|
||||
"volume_type": "gp2",
|
||||
"delete_on_termination": true
|
||||
}],
|
||||
}
|
||||
],
|
||||
"ami_block_device_mappings": [
|
||||
{
|
||||
"device_name": "/dev/sdb",
|
||||
|
@ -405,7 +410,7 @@ Here is an example using the optional AMI tags. This will add the tags
|
|||
provide your access keys, and may need to change the source AMI ID based on what
|
||||
images exist when this template is run:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "amazon-ebs",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -422,7 +427,7 @@ images exist when this template is run:
|
|||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
These source AMIs may include volumes that are not flagged to be destroyed on
|
||||
termination of the instance building the new image. Packer will attempt to clean
|
||||
up all residual volumes that are not designated by the user to remain after
|
||||
|
|
|
@ -1,25 +1,26 @@
|
|||
---
|
||||
description: |
|
||||
The `amazon-ebssurrogate` Packer builder is like the chroot builder, but does
|
||||
not require running inside an EC2 instance.
|
||||
layout: docs
|
||||
page_title: 'Amazon EBS Surrogate Builder'
|
||||
...
|
||||
sidebar_current: docs-builders-amazon-ebssurrogate
|
||||
page_title: Amazon EBS Surrogate - Builders
|
||||
description: |-
|
||||
The amazon-ebssurrogate Packer builder is like the chroot builder, but does
|
||||
not require running inside an EC2 instance.
|
||||
---
|
||||
|
||||
# EBS Surrogate Builder
|
||||
|
||||
Type: `amazon-ebssurrogate`
|
||||
|
||||
The `amazon-ebssurrogate` Packer builder is able to create Amazon AMIs by running
|
||||
a source instance with an attached volume, provisioning the attached volume in such
|
||||
a way that it can be used as the root volume for the AMI, and then snapshotting and
|
||||
creating the AMI from that volume.
|
||||
The `amazon-ebssurrogate` Packer builder is able to create Amazon AMIs by
|
||||
running a source instance with an attached volume, provisioning the attached
|
||||
volume in such a way that it can be used as the root volume for the AMI, and
|
||||
then snapshotting and creating the AMI from that volume.
|
||||
|
||||
This builder can therefore be used to bootstrap scratch-build images - for example
|
||||
FreeBSD or Ubuntu using ZFS as the root file system.
|
||||
This builder can therefore be used to bootstrap scratch-build images - for
|
||||
example FreeBSD or Ubuntu using ZFS as the root file system.
|
||||
|
||||
This is all done in your own AWS account. The builder will create temporary
|
||||
key pairs, security group rules, etc. that provide it temporary access to the
|
||||
This is all done in your own AWS account. The builder will create temporary key
|
||||
pairs, security group rules, etc. that provide it temporary access to the
|
||||
instance while the image is being created.
|
||||
|
||||
## Configuration Reference
|
||||
|
@ -142,7 +143,7 @@ builder.
|
|||
stop the instance and will wait for you to stop it manually. You can do this
|
||||
with a [windows-shell provisioner](https://www.packer.io/docs/provisioners/windows-shell.html).
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "windows-shell",
|
||||
"inline": ["\"c:\\Program Files\\Amazon\\Ec2ConfigService\\ec2config.exe\" -sysprep"]
|
||||
|
@ -228,7 +229,8 @@ builder.
|
|||
- `source_ami_filter` (object) - Filters used to populate the `source_ami` field.
|
||||
Example:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"source_ami_filter": {
|
||||
"filters": {
|
||||
"virtualization-type": "hvm",
|
||||
|
@ -238,6 +240,7 @@ builder.
|
|||
"owners": ["099720109477"],
|
||||
"most_recent": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical.
|
||||
|
@ -324,7 +327,7 @@ builder.
|
|||
Here is a basic example. You will need to provide access keys, and may need to
|
||||
change the AMI IDs according to what images exist at the time the template is run:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type": "amazon-ebs",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -337,7 +340,7 @@ change the AMI IDs according to what images exist at the time the template is ru
|
|||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
environmental variables. See the configuration reference in the section above
|
||||
for more information on what environmental variables Packer will look for.
|
||||
|
||||
|
@ -348,7 +351,7 @@ or [for Windows](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/finding-a
|
|||
|
||||
## Basic Example
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"type" : "amazon-surrogate",
|
||||
"secret_key" : "YOUR SECRET KEY HERE",
|
||||
|
@ -363,7 +366,7 @@ or [for Windows](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/finding-a
|
|||
"device_name" : "/dev/xvdf",
|
||||
"delete_on_termination" : false,
|
||||
"volume_size" : 10
|
||||
},
|
||||
}
|
||||
],
|
||||
"ami_root_device": {
|
||||
"source_device_name": "/dev/xvdf",
|
||||
|
@ -372,11 +375,10 @@ or [for Windows](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/finding-a
|
|||
"volume_size": 16,
|
||||
"volume_type": "gp2"
|
||||
}
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
environmental variables. See the configuration reference in the section above
|
||||
for more information on what environmental variables Packer will look for.
|
||||
|
||||
|
@ -392,7 +394,7 @@ with the `-debug` flag. In debug mode, the Amazon builder will save the private
|
|||
key in the current directory and will output the DNS or IP information as well.
|
||||
You can use this information to access the instance as it is running.
|
||||
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
These source AMIs may include volumes that are not flagged to be destroyed on
|
||||
termination of the instance building the new image. In addition to those volumes
|
||||
created by this builder, any volumes inn the source AMI which are not marked for
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
---
|
||||
description: |
|
||||
The `amazon-ebsvolume` Packer builder is like the EBS builder, but is
|
||||
intended to create EBS volumes rather than a machine image.
|
||||
layout: docs
|
||||
page_title: 'Amazon EBS Volume Builder'
|
||||
...
|
||||
sidebar_current: docs-builders-amazon-ebsvolume
|
||||
page_title: Amazon EBS Volume - Builders
|
||||
description: |-
|
||||
The amazon-ebsvolume Packer builder is like the EBS builder, but is intended
|
||||
to create EBS volumes rather than a machine image.
|
||||
---
|
||||
|
||||
# EBS Volume Builder
|
||||
|
||||
|
@ -14,15 +15,15 @@ The `amazon-ebsvolume` Packer builder is able to create Amazon Elastic Block
|
|||
Store volumes which are prepopulated with filesystems or data.
|
||||
|
||||
This builder builds EBS volumes by launching an EC2 instance from a source AMI,
|
||||
provisioning that running machine, and then destroying the source machine, keeping
|
||||
the volumes intact.
|
||||
provisioning that running machine, and then destroying the source machine,
|
||||
keeping the volumes intact.
|
||||
|
||||
This is all done in your own AWS account. The builder will create temporary
|
||||
key pairs, security group rules, etc. that provide it temporary access to the
|
||||
This is all done in your own AWS account. The builder will create temporary key
|
||||
pairs, security group rules, etc. that provide it temporary access to the
|
||||
instance while the image is being created.
|
||||
|
||||
The builder does *not* manage EBS Volumes. Once it creates volumes and stores
|
||||
it in your account, it is up to you to use, delete, etc. the volumes.
|
||||
The builder does *not* manage EBS Volumes. Once it creates volumes and stores it
|
||||
in your account, it is up to you to use, delete, etc. the volumes.
|
||||
|
||||
-> **Note:** Temporary resources are, by default, all created with the prefix
|
||||
`packer`. This can be useful if you want to restrict the security groups and
|
||||
|
@ -142,7 +143,8 @@ builder.
|
|||
- `source_ami_filter` (object) - Filters used to populate the `source_ami` field.
|
||||
Example:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"source_ami_filter": {
|
||||
"filters": {
|
||||
"virtualization-type": "hvm",
|
||||
|
@ -152,6 +154,7 @@ builder.
|
|||
"owners": ["099720109477"],
|
||||
"most_recent": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical.
|
||||
|
@ -221,7 +224,7 @@ builder.
|
|||
|
||||
## Basic Example
|
||||
|
||||
```
|
||||
```json
|
||||
{
|
||||
"type" : "amazon-ebsvolume",
|
||||
"secret_key" : "YOUR SECRET KEY HERE",
|
||||
|
@ -265,7 +268,7 @@ builder.
|
|||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
environmental variables. See the configuration reference in the section above
|
||||
for more information on what environmental variables Packer will look for.
|
||||
|
||||
|
@ -281,7 +284,7 @@ with the `-debug` flag. In debug mode, the Amazon builder will save the private
|
|||
key in the current directory and will output the DNS or IP information as well.
|
||||
You can use this information to access the instance as it is running.
|
||||
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
-> **Note:** Packer uses pre-built AMIs as the source for building images.
|
||||
These source AMIs may include volumes that are not flagged to be destroyed on
|
||||
termination of the instance building the new image. In addition to those volumes
|
||||
created by this builder, any volumes inn the source AMI which are not marked for
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
---
|
||||
description: |
|
||||
The `amazon-instance` Packer builder is able to create Amazon AMIs backed by
|
||||
instance storage as the root device. For more information on the difference
|
||||
between instance storage and EBS-backed instances, see the storage for the root
|
||||
device section in the EC2 documentation.
|
||||
layout: docs
|
||||
page_title: 'Amazon AMI Builder (instance-store)'
|
||||
...
|
||||
sidebar_current: docs-builders-amazon-instance
|
||||
page_title: Amazon instance-store - Builders
|
||||
description: |-
|
||||
The amazon-instance Packer builder is able to create Amazon AMIs backed by
|
||||
instance storage as the root device. For more information on the difference
|
||||
between instance storage and EBS-backed instances, see the storage for the
|
||||
root device section in the EC2 documentation.
|
||||
---
|
||||
|
||||
# AMI Builder (instance-store)
|
||||
|
||||
|
@ -234,7 +235,8 @@ builder.
|
|||
- `source_ami_filter` (object) - Filters used to populate the `source_ami` field.
|
||||
Example:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"source_ami_filter": {
|
||||
"filters": {
|
||||
"virtualization-type": "hvm",
|
||||
|
@ -244,6 +246,7 @@ builder.
|
|||
"owners": ["099720109477"],
|
||||
"most_recent": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical.
|
||||
|
@ -332,7 +335,7 @@ builder.
|
|||
|
||||
Here is a basic example. It is completely valid except for the access keys:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "amazon-instance",
|
||||
"access_key": "YOUR KEY HERE",
|
||||
|
@ -352,7 +355,7 @@ Here is a basic example. It is completely valid except for the access keys:
|
|||
}
|
||||
```
|
||||
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
-> **Note:** Packer can also read the access key and secret access key from
|
||||
environmental variables. See the configuration reference in the section above
|
||||
for more information on what environmental variables Packer will look for.
|
||||
|
||||
|
@ -387,7 +390,7 @@ multiple lines for convenience of reading. The bundle volume command is
|
|||
responsible for executing `ec2-bundle-vol` in order to store and image of the
|
||||
root filesystem to use to create the AMI.
|
||||
|
||||
``` {.text}
|
||||
```text
|
||||
sudo -i -n ec2-bundle-vol \
|
||||
-k {{.KeyPath}} \
|
||||
-u {{.AccountId}} \
|
||||
|
@ -403,7 +406,7 @@ sudo -i -n ec2-bundle-vol \
|
|||
The available template variables should be self-explanatory based on the
|
||||
parameters they're used to satisfy the `ec2-bundle-vol` command.
|
||||
|
||||
\~> **Warning!** Some versions of ec2-bundle-vol silently ignore all .pem and
|
||||
~> **Warning!** Some versions of ec2-bundle-vol silently ignore all .pem and
|
||||
.gpg files during the bundling of the AMI, which can cause problems on some
|
||||
systems, such as Ubuntu. You may want to customize the bundle volume command to
|
||||
include those files (see the `--no-filter` option of `ec2-bundle-vol`).
|
||||
|
@ -415,7 +418,7 @@ multiple lines for convenience of reading. Access key and secret key are omitted
|
|||
if using instance profile. The bundle upload command is responsible for taking
|
||||
the bundled volume and uploading it to S3.
|
||||
|
||||
``` {.text}
|
||||
```text
|
||||
sudo -i -n ec2-upload-bundle \
|
||||
-b {{.BucketName}} \
|
||||
-m {{.ManifestPath}} \
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
---
|
||||
description: |
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-amazon
|
||||
page_title: Amazon AMI - Builders
|
||||
description: |-
|
||||
Packer is able to create Amazon AMIs. To achieve this, Packer comes with
|
||||
multiple builders depending on the strategy you want to use to build the AMI.
|
||||
layout: docs
|
||||
page_title: Amazon AMI Builder
|
||||
...
|
||||
---
|
||||
|
||||
# Amazon AMI Builder
|
||||
|
||||
|
@ -33,7 +34,7 @@ Packer supports the following builders at the moment:
|
|||
not require running in AWS. This is an **advanced builder and should not be
|
||||
used by newcomers**.
|
||||
|
||||
-> **Don't know which builder to use?** If in doubt, use the [amazon-ebs
|
||||
-> **Don't know which builder to use?** If in doubt, use the [amazon-ebs
|
||||
builder](/docs/builders/amazon-ebs.html). It is much easier to use and Amazon
|
||||
generally recommends EBS-backed images nowadays.
|
||||
|
||||
|
@ -86,7 +87,7 @@ following steps:
|
|||
|
||||
3. Lookup an IAM role for the current EC2 instance (if you're running in EC2)
|
||||
|
||||
\~> **Subtle details of automatic lookup may change over time.** The most
|
||||
~> **Subtle details of automatic lookup may change over time.** The most
|
||||
reliable way to specify your configuration is by setting them in template
|
||||
variables (directly or indirectly), or by using the `AWS_ACCESS_KEY_ID` and
|
||||
`AWS_SECRET_ACCESS_KEY` environment variables.
|
||||
|
@ -104,7 +105,7 @@ the instance's IAM profile, if it has one.
|
|||
The following policy document provides the minimal set permissions necessary for
|
||||
Packer to work:
|
||||
|
||||
``` {.javascript}
|
||||
```javascript
|
||||
{
|
||||
"Version": "2012-10-17",
|
||||
"Statement": [{
|
||||
|
@ -163,7 +164,7 @@ The example policy below may help packer work with IAM roles. Note that this
|
|||
example provides more than the minimal set of permissions needed for packer to
|
||||
work, but specifics will depend on your use-case.
|
||||
|
||||
``` {.json}
|
||||
```json
|
||||
{
|
||||
"Sid": "PackerIAMPassRole",
|
||||
"Effect": "Allow",
|
||||
|
|
|
@ -1,18 +1,24 @@
|
|||
---
|
||||
description: |
|
||||
|
||||
layout: docs
|
||||
page_title: Authorizing Packer Builds in Azure
|
||||
...
|
||||
sidebar_current: docs-builders-azure-setup
|
||||
page_title: Setup - Azure - Builders
|
||||
description: |-
|
||||
In order to build VMs in Azure, Packer needs various configuration options.
|
||||
These options and how to obtain them are documented on this page.
|
||||
---
|
||||
|
||||
# Authorizing Packer Builds in Azure
|
||||
|
||||
In order to build VMs in Azure Packer needs 6 configuration options to be specified:
|
||||
|
||||
- `subscription_id` - UUID identifying your Azure subscription (where billing is handled)
|
||||
|
||||
- `client_id` - UUID identifying the Active Directory service principal that will run your Packer builds
|
||||
|
||||
- `client_secret` - service principal secret / password
|
||||
|
||||
- `resource_group_name` - name of the resource group where your VHD(s) will be stored
|
||||
|
||||
- `storage_account` - name of the storage account where your VHD(s) will be stored
|
||||
|
||||
-> Behind the scenes Packer uses the OAuth protocol to authenticate against Azure Active Directory and authorize requests to the Azure Service Management API. These topics are unnecessarily complicated so we will try to ignore them for the rest of this document.<br /><br />You do not need to understand how OAuth works in order to use Packer with Azure, though the Active Directory terms "service principal" and "role" will be useful for understanding Azure's access policies.
|
||||
|
@ -49,7 +55,9 @@ To get the credentials above, we will need to install the Azure CLI. Please refe
|
|||
|
||||
If you already have node.js installed you can use `npm` to install `azure-cli`:
|
||||
|
||||
npm install -g azure-cli --no-progress
|
||||
```shell
|
||||
$ npm install -g azure-cli --no-progress
|
||||
```
|
||||
|
||||
## Guided Setup
|
||||
|
||||
|
@ -63,20 +71,26 @@ If you want more control or the script does not work for you, you can also use t
|
|||
|
||||
Login using the Azure CLI
|
||||
|
||||
azure config mode arm
|
||||
azure login -u USERNAME
|
||||
```shell
|
||||
$ azure config mode arm
|
||||
$ azure login -u USERNAME
|
||||
```
|
||||
|
||||
Get your account information
|
||||
|
||||
azure account list --json | jq '.[].name'
|
||||
azure account set ACCOUNTNAME
|
||||
azure account show --json | jq ".[] | .id"
|
||||
```shell
|
||||
$ azure account list --json | jq -r '.[].name'
|
||||
$ azure account set ACCOUNTNAME
|
||||
$ azure account show --json | jq -r ".[] | .id"
|
||||
```
|
||||
|
||||
-> Throughout this document when you see a command pipe to `jq` you may instead omit `--json` and everything after it, but the output will be more verbose. For example you can simply run `azure account list` instead.
|
||||
|
||||
This will print out one line that look like this:
|
||||
|
||||
"4f562e88-8caf-421a-b4da-e3f6786c52ec"
|
||||
```
|
||||
4f562e88-8caf-421a-b4da-e3f6786c52ec
|
||||
```
|
||||
|
||||
This is your `subscription_id`. Note it for later.
|
||||
|
||||
|
@ -84,9 +98,12 @@ This is your `subscription_id`. Note it for later.
|
|||
|
||||
A [resource group](https://azure.microsoft.com/en-us/documentation/articles/resource-group-overview/#resource-groups) is used to organize related resources. Resource groups and storage accounts are tied to a location. To see available locations, run:
|
||||
|
||||
azure location list
|
||||
...
|
||||
azure group create -n GROUPNAME -l LOCATION
|
||||
```shell
|
||||
$ azure location list
|
||||
# ...
|
||||
|
||||
$ azure group create -n GROUPNAME -l LOCATION
|
||||
```
|
||||
|
||||
Your storage account (below) will need to use the same `GROUPNAME` and `LOCATION`.
|
||||
|
||||
|
@ -94,8 +111,13 @@ Your storage account (below) will need to use the same `GROUPNAME` and `LOCATION
|
|||
|
||||
We will need to create a storage account where your Packer artifacts will be stored. We will create a `LRS` storage account which is the least expensive price/GB at the time of writing.
|
||||
|
||||
azure storage account create -g GROUPNAME \
|
||||
-l LOCATION --sku-name LRS --kind storage STORAGENAME
|
||||
```shell
|
||||
$ azure storage account create \
|
||||
-g GROUPNAME \
|
||||
-l LOCATION \
|
||||
--sku-name LRS \
|
||||
--kind storage STORAGENAME
|
||||
```
|
||||
|
||||
-> `LRS` is meant as a literal "LRS" and not as a variable.
|
||||
|
||||
|
@ -105,7 +127,13 @@ Make sure that `GROUPNAME` and `LOCATION` are the same as above.
|
|||
|
||||
An application represents a way to authorize access to the Azure API. Note that you will need to specify a URL for your application (this is intended to be used for OAuth callbacks) but these do not actually need to be valid URLs.
|
||||
|
||||
azure ad app create -n APPNAME -i APPURL --home-page APPURL -p PASSWORD
|
||||
```shell
|
||||
$ azure ad app create \
|
||||
-n APPNAME \
|
||||
-i APPURL \
|
||||
--home-page APPURL \
|
||||
-p PASSWORD
|
||||
```
|
||||
|
||||
Password is your `client_secret` and can be anything you like. I recommend using `openssl rand -base64 24`.
|
||||
|
||||
|
@ -115,21 +143,31 @@ You cannot directly grant permissions to an application. Instead, you create a s
|
|||
|
||||
First, get the `APPID` for the application we just created.
|
||||
|
||||
azure ad app list --json | \
|
||||
jq '.[] | select(.displayName | contains("APPNAME")) | .appId'
|
||||
azure ad sp create --applicationId APPID
|
||||
```shell
|
||||
$ azure ad app list --json \
|
||||
| jq '.[] | select(.displayName | contains("APPNAME")) | .appId'
|
||||
# ...
|
||||
|
||||
$ azure ad sp create --applicationId APPID
|
||||
```
|
||||
|
||||
### Grant Permissions to Your Application
|
||||
|
||||
Finally, we will associate the proper permissions with our application's service principal. We're going to assign the `Owner` role to our Packer application and change the scope to manage our whole subscription. (The `Owner` role can be scoped to a specific resource group to further reduce the scope of the account.) This allows Packer to create temporary resource groups for each build.
|
||||
|
||||
azure role assignment create --spn APPURL -o "Owner" \
|
||||
```shell
|
||||
$ azure role assignment create \
|
||||
--spn APPURL \
|
||||
-o "Owner" \
|
||||
-c /subscriptions/SUBSCRIPTIONID
|
||||
```
|
||||
|
||||
There are a lot of pre-defined roles and you can define your own with more granular permissions, though this is out of scope. You can see a list of pre-configured roles via:
|
||||
|
||||
azure role list --json | \
|
||||
jq ".[] | {name:.Name, description:.Description}"
|
||||
```shell
|
||||
$ azure role list --json \
|
||||
| jq ".[] | {name:.Name, description:.Description}"
|
||||
```
|
||||
|
||||
|
||||
### Configuring Packer
|
||||
|
@ -138,12 +176,17 @@ Now (finally) everything has been setup in Azure. Let's get our configuration ke
|
|||
|
||||
Get `subscription_id`:
|
||||
|
||||
azure account show --json | jq ".[] | .id"
|
||||
```shell
|
||||
$ azure account show --json \
|
||||
| jq ".[] | .id"
|
||||
```
|
||||
|
||||
Get `client_id`
|
||||
|
||||
azure ad app list --json | \
|
||||
jq '.[] | select(.displayName | contains("APPNAME")) | .appId'
|
||||
```shell
|
||||
$ azure ad app list --json \
|
||||
| jq '.[] | select(.displayName | contains("APPNAME")) | .appId'
|
||||
```
|
||||
|
||||
Get `client_secret`
|
||||
|
||||
|
@ -151,8 +194,12 @@ This cannot be retrieved. If you forgot this, you will have to delete and re-cre
|
|||
|
||||
Get `resource_group_name`
|
||||
|
||||
azure group list
|
||||
```shell
|
||||
$ azure group list
|
||||
```
|
||||
|
||||
Get `storage_account`
|
||||
|
||||
azure storage account list
|
||||
```shell
|
||||
$ azure storage account list
|
||||
```
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
---
|
||||
description: |
|
||||
|
||||
layout: docs
|
||||
page_title: Azure Resource Manager
|
||||
...
|
||||
sidebar_current: docs-builders-azure
|
||||
page_title: Azure - Builders
|
||||
description: |-
|
||||
Packer supports building VHDs in Azure Resource manager.
|
||||
---
|
||||
|
||||
# Azure Resource Manager Builder
|
||||
|
||||
|
@ -118,7 +119,7 @@ builder.
|
|||
|
||||
Here is a basic example for Azure.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "azure-arm",
|
||||
|
||||
|
@ -156,7 +157,8 @@ Please refer to the Azure [examples](https://github.com/mitchellh/packer/tree/ma
|
|||
|
||||
The following provisioner snippet shows how to sysprep a Windows VM. Deprovision should be the last operation executed by a build.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"provisioners": [
|
||||
{
|
||||
"type": "powershell",
|
||||
|
@ -166,21 +168,26 @@ The following provisioner snippet shows how to sysprep a Windows VM. Deprovisio
|
|||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
The following provisioner snippet shows how to deprovision a Linux VM. Deprovision should be the last operation executed by a build.
|
||||
|
||||
``` {.javascript}
|
||||
"provisioners": [{
|
||||
```json
|
||||
{
|
||||
"provisioners": [
|
||||
{
|
||||
"execute_command": "chmod +x {{ .Path }}; {{ .Vars }} sudo -E sh '{{ .Path }}'",
|
||||
"inline": [
|
||||
"/usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync"
|
||||
],
|
||||
"inline_shebang": "/bin/sh -x",
|
||||
"type": "shell"
|
||||
}]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
To learn more about the Linux deprovision process please see WALinuxAgent's [README](https://github.com/Azure/WALinuxAgent/blob/master/README.md).
|
||||
|
@ -205,7 +212,7 @@ The Azure builder attempts to pick default values that provide for a just works
|
|||
|
||||
## Implementation
|
||||
|
||||
\~> **Warning!** This is an advanced topic. You do not need to understand the implementation to use the Azure
|
||||
~> **Warning!** This is an advanced topic. You do not need to understand the implementation to use the Azure
|
||||
builder.
|
||||
|
||||
The Azure builder uses ARM
|
|
@ -1,12 +1,13 @@
|
|||
---
|
||||
description: |
|
||||
The `cloudstack` Packer builder is able to create new templates for use with
|
||||
CloudStack. The builder takes either an ISO or an existing template as it's
|
||||
source, runs any provisioning necessary on the instance after launching it
|
||||
and then creates a new template from that instance.
|
||||
layout: docs
|
||||
page_title: CloudStack Builder
|
||||
...
|
||||
sidebar_current: docs-builders-cloudstack
|
||||
page_title: CloudStack - Builders
|
||||
description: |-
|
||||
The cloudstack Packer builder is able to create new templates for use with
|
||||
CloudStack. The builder takes either an ISO or an existing template as it's
|
||||
source, runs any provisioning necessary on the instance after launching it and
|
||||
then creates a new template from that instance.
|
||||
---
|
||||
|
||||
# CloudStack Builder
|
||||
|
||||
|
@ -126,7 +127,7 @@ builder.
|
|||
|
||||
Here is a basic example.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "cloudstack",
|
||||
"api_url": "https://cloudstack.company.com/client/api",
|
||||
|
@ -134,7 +135,7 @@ Here is a basic example.
|
|||
"secret_key": "YOUR_SECRET_KEY",
|
||||
|
||||
"disk_offering": "Small - 20GB",
|
||||
"cidr_list": ["0.0.0.0/0"]
|
||||
"cidr_list": ["0.0.0.0/0"],
|
||||
"hypervisor": "KVM",
|
||||
"network": "management",
|
||||
"service_offering": "small",
|
||||
|
|
|
@ -1,15 +1,16 @@
|
|||
---
|
||||
description: |
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-custom
|
||||
page_title: Custom - Builders
|
||||
description: |-
|
||||
Packer is extensible, allowing you to write new builders without having to
|
||||
modify the core source code of Packer itself. Documentation for creating new
|
||||
builders is covered in the custom builders page of the Packer plugin section.
|
||||
layout: docs
|
||||
page_title: Custom Builder
|
||||
...
|
||||
---
|
||||
|
||||
# Custom Builder
|
||||
|
||||
Packer is extensible, allowing you to write new builders without having to
|
||||
modify the core source code of Packer itself. Documentation for creating new
|
||||
builders is covered in the [custom builders](/docs/extend/builder.html) page of
|
||||
builders is covered in the [custom builders](/docs/extending/custom-builders.html) page of
|
||||
the Packer plugin section.
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
---
|
||||
description: |
|
||||
The `digitalocean` Packer builder is able to create new images for use with
|
||||
DigitalOcean. The builder takes a source image, runs any provisioning necessary
|
||||
on the image after launching it, then snapshots it into a reusable image. This
|
||||
reusable image can then be used as the foundation of new servers that are
|
||||
launched within DigitalOcean.
|
||||
layout: docs
|
||||
page_title: DigitalOcean Builder
|
||||
...
|
||||
sidebar_current: docs-builders-digitalocean
|
||||
page_title: DigitalOcean - Builders
|
||||
description: |-
|
||||
The digitalocean Packer builder is able to create new images for use with
|
||||
DigitalOcean. The builder takes a source image, runs any provisioning
|
||||
necessary on the image after launching it, then snapshots it into a reusable
|
||||
image. This reusable image can then be used as the foundation of new servers
|
||||
that are launched within DigitalOcean.
|
||||
---
|
||||
|
||||
|
||||
# DigitalOcean Builder
|
||||
|
||||
|
@ -84,7 +86,7 @@ builder.
|
|||
Here is a basic example. It is completely valid as soon as you enter your own
|
||||
access tokens:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "digitalocean",
|
||||
"api_token": "YOUR API KEY",
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
---
|
||||
description: |
|
||||
The `docker` Packer builder builds Docker images using Docker. The builder
|
||||
starts a Docker container, runs provisioners within this container, then exports
|
||||
the container for reuse or commits the image.
|
||||
layout: docs
|
||||
page_title: Docker Builder
|
||||
...
|
||||
sidebar_current: docs-builders-docker
|
||||
page_title: Docker - Builders
|
||||
description: |-
|
||||
The docker Packer builder builds Docker images using Docker. The builder
|
||||
starts a Docker container, runs provisioners within this container, then
|
||||
exports the container for reuse or commits the image.
|
||||
---
|
||||
|
||||
# Docker Builder
|
||||
|
||||
|
@ -34,7 +35,7 @@ Packer within that environment.
|
|||
Below is a fully functioning example. It doesn't do anything useful, since no
|
||||
provisioners are defined, but it will effectively repackage an image.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "docker",
|
||||
"image": "ubuntu",
|
||||
|
@ -48,7 +49,7 @@ Below is another example, the same as above but instead of exporting the running
|
|||
container, this one commits the container to an image. The image can then be
|
||||
more easily tagged, pushed, etc.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "docker",
|
||||
"image": "ubuntu",
|
||||
|
@ -62,7 +63,7 @@ Below is an example using the changes argument of the builder. This feature allo
|
|||
|
||||
Example uses of all of the options, assuming one is building an NGINX image from ubuntu as an simple example:
|
||||
|
||||
```
|
||||
```json
|
||||
{
|
||||
"type": "docker",
|
||||
"image": "ubuntu",
|
||||
|
@ -82,6 +83,33 @@ Example uses of all of the options, assuming one is building an NGINX image from
|
|||
|
||||
Allowed metadata fields that can be changed are:
|
||||
|
||||
<<<<<<< HEAD
|
||||
- `CMD`
|
||||
- String, supports both array (escaped) and string form
|
||||
- EX: `”CMD [\"nginx\", \"-g\", \"daemon off;\"]"`
|
||||
- EX: `"CMD nginx -g daemon off;”`
|
||||
- `ENTRYPOINT`
|
||||
- String
|
||||
- EX: `“ENTRYPOINT /var/www/start.sh”`
|
||||
- `ENV`
|
||||
- String, note there is no equal sign:
|
||||
- EX: `“ENV HOSTNAME www.example.com”` not `“ENV HOSTNAME=www.example.com”`
|
||||
- `EXPOSE`
|
||||
- String, space separated ports
|
||||
- EX: `“EXPOSE 80 443”`
|
||||
- `MAINTAINER`
|
||||
- String
|
||||
- EX: `“MAINTAINER NAME”`
|
||||
- `USER`
|
||||
- String
|
||||
- EX: `“USER USERNAME”`
|
||||
- `VOLUME`
|
||||
- String
|
||||
- EX: `“VOLUME FROM TO“`
|
||||
- `WORKDIR`
|
||||
- String
|
||||
- EX: `“WORKDIR PATH”`
|
||||
=======
|
||||
- CMD
|
||||
- String, supports both array (escaped) and string form
|
||||
- EX: `"CMD [\"nginx\", \"-g\", \"daemon off;\"]"`
|
||||
|
@ -107,6 +135,7 @@ Allowed metadata fields that can be changed are:
|
|||
- WORKDIR
|
||||
- String
|
||||
- EX: `"WORKDIR PATH"`
|
||||
>>>>>>> mitchellh/master
|
||||
|
||||
## Configuration Reference
|
||||
|
||||
|
@ -209,7 +238,7 @@ created image. This is accomplished using a sequence definition (a collection of
|
|||
post-processors that are treated as as single pipeline, see
|
||||
[Post-Processors](/docs/templates/post-processors.html) for more information):
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"post-processors": [
|
||||
[
|
||||
|
@ -233,7 +262,7 @@ pushing the image to a container repository.
|
|||
If you want to do this manually, however, perhaps from a script, you can import
|
||||
the image using the process below:
|
||||
|
||||
``` {.text}
|
||||
```shell
|
||||
$ docker import - registry.mydomain.com/mycontainer:latest < artifact.tar
|
||||
```
|
||||
|
||||
|
@ -248,7 +277,7 @@ which tags and pushes an image. This is accomplished using a sequence definition
|
|||
(a collection of post-processors that are treated as as single pipeline, see
|
||||
[Post-Processors](/docs/templates/post-processors.html) for more information):
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"post-processors": [
|
||||
[
|
||||
|
@ -273,7 +302,7 @@ Going a step further, if you wanted to tag and push an image to multiple
|
|||
container repositories, this could be accomplished by defining two,
|
||||
nearly-identical sequence definitions, as demonstrated by the example below:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"post-processors": [
|
||||
[
|
||||
|
@ -305,7 +334,7 @@ Packer can tag and push images for use in
|
|||
processors work as described above and example configuration properties are
|
||||
shown below:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"post-processors": [
|
||||
[
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
---
|
||||
description: |
|
||||
The `file` Packer builder is not really a builder, it just creates an
|
||||
artifact from a file. It can be used to debug post-processors without
|
||||
incurring high wait times. It does not run any provisioners.
|
||||
layout: docs
|
||||
page_title: File Builder
|
||||
...
|
||||
sidebar_current: docs-builders-file
|
||||
page_title: File - Builders
|
||||
description: |-
|
||||
The file Packer builder is not really a builder, it just creates an artifact
|
||||
from a file. It can be used to debug post-processors without incurring high
|
||||
wait times. It does not run any provisioners.
|
||||
---
|
||||
|
||||
# File Builder
|
||||
|
||||
|
@ -20,7 +21,7 @@ wait times. It does not run any provisioners.
|
|||
Below is a fully functioning example. It doesn't do anything useful, since no
|
||||
provisioners are defined, but it will connect to the specified host via ssh.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "file",
|
||||
"content": "Lorem ipsum dolor sit amet",
|
||||
|
|
|
@ -1,12 +1,11 @@
|
|||
---
|
||||
description: |
|
||||
The `googlecompute` Packer builder is able to create images for use with Google
|
||||
Compute Engine (GCE) based on existing images. Building GCE images from scratch
|
||||
is not possible from Packer at this time. For building images from scratch, please see
|
||||
[Building GCE Images from Scratch](https://cloud.google.com/compute/docs/tutorials/building-images).
|
||||
layout: docs
|
||||
page_title: Google Compute Builder
|
||||
...
|
||||
sidebar_current: docs-builders-googlecompute
|
||||
page_title: Google Compute - Builders
|
||||
description: |-
|
||||
The googlecompute Packer builder is able to create images for use with
|
||||
Google Cloud Compute Engine (GCE) based on existing images.
|
||||
---
|
||||
|
||||
# Google Compute Builder
|
||||
|
||||
|
@ -39,18 +38,17 @@ scopes when launching the instance.
|
|||
|
||||
For `gcloud`, do this via the `--scopes` parameter:
|
||||
|
||||
``` {.sh}
|
||||
gcloud compute --project YOUR_PROJECT instances create "INSTANCE-NAME" ... \
|
||||
```shell
|
||||
$ gcloud compute --project YOUR_PROJECT instances create "INSTANCE-NAME" ... \
|
||||
--scopes "https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/devstorage.full_control" \
|
||||
...
|
||||
```
|
||||
|
||||
For the [Google Developers Console](https://console.developers.google.com):
|
||||
|
||||
1. Choose "Show advanced options"
|
||||
2. Tick "Enable Compute Engine service account"
|
||||
3. Choose "Read Write" for Compute
|
||||
4. Chose "Full" for "Storage"
|
||||
1. Tick "Enable Compute Engine service account"
|
||||
1. Choose "Read Write" for Compute
|
||||
1. Chose "Full" for "Storage"
|
||||
|
||||
**The service account will be used automatically by Packer as long as there is
|
||||
no *account file* specified in the Packer configuration file.**
|
||||
|
@ -65,12 +63,12 @@ straightforwarded, it is documented here.
|
|||
1. Log into the [Google Developers
|
||||
Console](https://console.developers.google.com) and select a project.
|
||||
|
||||
2. Under the "APIs & Auth" section, click "Credentials."
|
||||
1. Under the "APIs & Auth" section, click "Credentials."
|
||||
|
||||
3. Click the "Create new Client ID" button, select "Service account", and click
|
||||
1. Click the "Create new Client ID" button, select "Service account", and click
|
||||
"Create Client ID"
|
||||
|
||||
4. Click "Generate new JSON key" for the Service Account you just created. A
|
||||
1. Click "Generate new JSON key" for the Service Account you just created. A
|
||||
JSON file will be downloaded automatically. This is your *account file*.
|
||||
|
||||
### Precedence of Authentication Methods
|
||||
|
@ -79,15 +77,23 @@ Packer looks for credentials in the following places, preferring the first locat
|
|||
|
||||
1. A `account_file` option in your packer file.
|
||||
|
||||
2. A JSON file (Service Account) whose path is specified by the `GOOGLE_APPLICATION_CREDENTIALS` environment variable.
|
||||
1. A JSON file (Service Account) whose path is specified by the `GOOGLE_APPLICATION_CREDENTIALS` environment variable.
|
||||
|
||||
3. A JSON file in a location known to the `gcloud` command-line tool. (`gcloud` creates it when it's configured)
|
||||
1. A JSON file in a location known to the `gcloud` command-line tool. (`gcloud` creates it when it's configured)
|
||||
|
||||
On Windows, this is: `%APPDATA%/gcloud/application_default_credentials.json`.
|
||||
On Windows, this is:
|
||||
|
||||
On other systems: `$HOME/.config/gcloud/application_default_credentials.json`.
|
||||
```
|
||||
%APPDATA%/gcloud/application_default_credentials.json
|
||||
```
|
||||
|
||||
4. On Google Compute Engine and Google App Engine Managed VMs, it fetches credentials from the metadata server. (Needs a correct VM authentication scope configuration, see above)
|
||||
On other systems:
|
||||
|
||||
```
|
||||
$HOME/.config/gcloud/application_default_credentials.json
|
||||
```
|
||||
|
||||
1. On Google Compute Engine and Google App Engine Managed VMs, it fetches credentials from the metadata server. (Needs a correct VM authentication scope configuration, see above)
|
||||
|
||||
## Basic Example
|
||||
|
||||
|
@ -97,15 +103,17 @@ repackage an existing GCE image. The account_file is obtained in the previous
|
|||
section. If it parses as JSON it is assumed to be the file itself, otherwise it
|
||||
is assumed to be the path to the file containing the JSON.
|
||||
|
||||
``` {.json}
|
||||
```json
|
||||
{
|
||||
"builders": [{
|
||||
"builders": [
|
||||
{
|
||||
"type": "googlecompute",
|
||||
"account_file": "account.json",
|
||||
"project_id": "my project",
|
||||
"source_image": "debian-7-wheezy-v20150127",
|
||||
"zone": "us-central1-a"
|
||||
}]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -221,11 +229,13 @@ builder.
|
|||
- `scopes` (array of strings) - The service account scopes for launched instance.
|
||||
Defaults to:
|
||||
|
||||
``` {.json}
|
||||
[ "https://www.googleapis.com/auth/userinfo.email",
|
||||
```json
|
||||
[
|
||||
"https://www.googleapis.com/auth/userinfo.email",
|
||||
"https://www.googleapis.com/auth/compute",
|
||||
"https://www.googleapis.com/auth/devstorage.full_control" ]
|
||||
```
|
||||
"https://www.googleapis.com/auth/devstorage.full_control"
|
||||
]
|
||||
```
|
||||
|
||||
- `source_image_project_id` (string) - The project ID of the
|
||||
project containing the source image.
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
---
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-hyperv-iso
|
||||
page_title: Hyper-V ISO - Builders
|
||||
description: |-
|
||||
The Hyper-V Packer builder is able to create Hyper-V virtual machines and export them.
|
||||
layout: "docs"
|
||||
page_title: "Hyper-V Builder (from an ISO)"
|
||||
The Hyper-V Packer builder is able to create Hyper-V virtual machines and
|
||||
export them.
|
||||
---
|
||||
|
||||
# Hyper-V Builder (from an ISO)
|
||||
|
@ -23,7 +25,7 @@ Here is a basic example. This example is not functional. It will start the
|
|||
OS installer but then fail because we don't provide the preseed file for
|
||||
Ubuntu to self-install. Still, the example serves to show the basic configuration:
|
||||
|
||||
```javascript
|
||||
```json
|
||||
{
|
||||
"type": "hyperv-iso",
|
||||
"iso_url": "http://releases.ubuntu.com/12.04/ubuntu-12.04.5-server-amd64.iso",
|
||||
|
@ -108,7 +110,7 @@ can be configured for this builder.
|
|||
listed in this setting get placed into the root directory of the floppy
|
||||
and the floppy is attached as the first floppy device. Currently, no
|
||||
support exists for creating sub-directories on the floppy. Wildcard
|
||||
characters (*, ?, and []) are allowed. Directory names are also allowed,
|
||||
characters (`*`, `?`, and `[]`) are allowed. Directory names are also allowed,
|
||||
which will add all the files found in the directory to the floppy.
|
||||
|
||||
- `generation` (integer) - The Hyper-V generation for the virtual machine. By
|
||||
|
@ -269,7 +271,7 @@ The available variables are:
|
|||
Example boot command. This is actually a working boot command used to start
|
||||
an Ubuntu 12.04 installer:
|
||||
|
||||
```text
|
||||
```json
|
||||
[
|
||||
"<esc><esc><enter><wait>",
|
||||
"/install/vmlinuz noapic ",
|
||||
|
@ -303,7 +305,7 @@ There is a [windows version of mkisofs](http://opensourcepack.blogspot.co.uk/p/c
|
|||
|
||||
Example powershell script. This is an actually working powershell script used to create a Windows answer iso:
|
||||
|
||||
```text
|
||||
```powershell
|
||||
$isoFolder = "answer-iso"
|
||||
if (test-path $isoFolder){
|
||||
remove-item $isoFolder -Force -Recurse
|
||||
|
@ -342,7 +344,7 @@ if (test-path $isoFolder){
|
|||
|
||||
Packer config:
|
||||
|
||||
```javascript
|
||||
```json
|
||||
{
|
||||
"builders": [
|
||||
{
|
||||
|
@ -371,8 +373,10 @@ Packer config:
|
|||
"generation": 2,
|
||||
"switch_name":"LAN",
|
||||
"enable_secure_boot":true
|
||||
}],
|
||||
"provisioners": [{
|
||||
}
|
||||
],
|
||||
"provisioners": [
|
||||
{
|
||||
"type": "powershell",
|
||||
"elevated_user":"vagrant",
|
||||
"elevated_password":"vagrant",
|
||||
|
@ -384,7 +388,8 @@ Packer config:
|
|||
"./windows/common/ultradefrag.ps1",
|
||||
"./windows/common/sdelete.ps1"
|
||||
]
|
||||
}],
|
||||
}
|
||||
],
|
||||
"post-processors": [
|
||||
{
|
||||
"type": "vagrant",
|
||||
|
@ -868,7 +873,7 @@ a virtual switch with an `External` connection type.
|
|||
|
||||
### Packer config:
|
||||
|
||||
```javascript
|
||||
```json
|
||||
{
|
||||
"variables": {
|
||||
"vm_name": "ubuntu-xenial",
|
||||
|
@ -912,7 +917,8 @@ a virtual switch with an `External` connection type.
|
|||
"cpu": "{{user `cpu`}}",
|
||||
"generation": 2,
|
||||
"enable_secure_boot": false
|
||||
}]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
---
|
||||
layout: "docs"
|
||||
page_title: "Hyper-V Builder"
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-hyperv
|
||||
page_title: Hyper-V - Builders
|
||||
description: |-
|
||||
The Hyper-V Packer builder is able to create Hyper-V virtual machines and export them.
|
||||
The Hyper-V Packer builder is able to create Hyper-V virtual machines and
|
||||
export them.
|
||||
---
|
||||
|
||||
# HyperV Builder
|
||||
|
@ -12,7 +14,7 @@ virtual machines and export them.
|
|||
|
||||
Packer currently only support building HyperV machines with an iso:
|
||||
|
||||
* [hyperv-iso](/docs/builders/hyperv-iso.html) - Starts from
|
||||
- [hyperv-iso](/docs/builders/hyperv-iso.html) - Starts from
|
||||
an ISO file, creates a brand new Hyper-V VM, installs an OS,
|
||||
provisions software within the OS, then exports that machine to create
|
||||
an image. This is best for people who want to start from scratch.
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
---
|
||||
layout: docs
|
||||
page_title: Builders
|
||||
sidebar_current: docs-builders
|
||||
description: |-
|
||||
Builders are responsible for creating machines and generating images from them
|
||||
for various platforms.
|
||||
---
|
||||
|
||||
# Builders
|
||||
|
||||
Builders are responsible for creating machines and generating images from them
|
||||
for various platforms. For example, there are separate builders for EC2, VMware,
|
||||
VirtualBox, etc. Packer comes with many builders by default, and can also be
|
||||
extended to add new builders.
|
||||
|
||||
To learn more about an individual builder, choose it from the sidebar. Each
|
||||
builder has its own configuration options and parameters.
|
|
@ -1,12 +1,13 @@
|
|||
---
|
||||
description: |
|
||||
The `null` Packer builder is not really a builder, it just sets up an SSH
|
||||
layout: docs
|
||||
sidebar_current: docs-builders-null
|
||||
page_title: Null - Builders
|
||||
description: |-
|
||||
The null Packer builder is not really a builder, it just sets up an SSH
|
||||
connection and runs the provisioners. It can be used to debug provisioners
|
||||
without incurring high wait times. It does not create any kind of image or
|
||||
artifact.
|
||||
layout: docs
|
||||
page_title: Null Builder
|
||||
...
|
||||
---
|
||||
|
||||
# Null Builder
|
||||
|
||||
|
@ -22,7 +23,7 @@ artifact.
|
|||
Below is a fully functioning example. It doesn't do anything useful, since no
|
||||
provisioners are defined, but it will connect to the specified host via ssh.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "null",
|
||||
"ssh_host": "127.0.0.1",
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
---
|
||||
description: |
|
||||
The 1&1 builder is able to create images for 1&1 cloud.
|
||||
layout: docs
|
||||
page_title: 1&1 Builder
|
||||
...
|
||||
sidebar_current: docs-builders-oneandone
|
||||
page_title: 1&1 - Builders
|
||||
description: |-
|
||||
The 1&1 builder is able to create images for 1&1 cloud.
|
||||
---
|
||||
|
||||
# 1&1 Builder
|
||||
|
||||
|
|
|
@ -1,15 +1,14 @@
|
|||
---
|
||||
description: |
|
||||
The `openstack` Packer builder is able to create new images for use with
|
||||
OpenStack. The builder takes a source image, runs any provisioning necessary on
|
||||
the image after launching it, then creates a new reusable image. This reusable
|
||||
image can then be used as the foundation of new servers that are launched within
|
||||
OpenStack. The builder will create temporary keypairs that provide temporary
|
||||
access to the server while the image is being created. This simplifies
|
||||
configuration quite a bit.
|
||||
layout: docs
|
||||
page_title: OpenStack Builder
|
||||
...
|
||||
sidebar_current: docs-builders-openstack
|
||||
page_title: OpenStack - Builders
|
||||
description: |-
|
||||
The openstack Packer builder is able to create new images for use with
|
||||
OpenStack. The builder takes a source image, runs any provisioning necessary
|
||||
on the image after launching it, then creates a new reusable image. This
|
||||
reusable image can then be used as the foundation of new servers that are
|
||||
launched within OpenStack.
|
||||
---
|
||||
|
||||
# OpenStack Builder
|
||||
|
||||
|
@ -26,7 +25,7 @@ created. This simplifies configuration quite a bit.
|
|||
The builder does *not* manage images. Once it creates an image, it is up to you
|
||||
to use it or delete it.
|
||||
|
||||
\~> **OpenStack Liberty or later requires OpenSSL!** To use the OpenStack
|
||||
~> **OpenStack Liberty or later requires OpenSSL!** To use the OpenStack
|
||||
builder with OpenStack Liberty (Oct 2015) or later you need to have OpenSSL
|
||||
installed _if you are using temporary key pairs_, i.e. don't use
|
||||
[`ssh_keypair_name`](openstack.html#ssh_keypair_name) nor
|
||||
|
@ -179,7 +178,7 @@ builder.
|
|||
|
||||
Here is a basic example. This is a example to build on DevStack running in a VM.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "openstack",
|
||||
"identity_endpoint": "http://<destack-ip>:5000/v3",
|
||||
|
@ -202,7 +201,7 @@ Here is a basic example. This is a example to build on DevStack running in a VM.
|
|||
Here is a basic example. This is a working example to build a Ubuntu 12.04 LTS
|
||||
(Precise Pangolin) on Rackspace OpenStack cloud offering.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "openstack",
|
||||
"username": "foo",
|
||||
|
@ -220,7 +219,7 @@ Here is a basic example. This is a working example to build a Ubuntu 12.04 LTS
|
|||
This example builds an Ubuntu 14.04 image on a private OpenStack cloud, powered
|
||||
by Metacloud.
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "openstack",
|
||||
"ssh_username": "root",
|
||||
|
@ -255,11 +254,13 @@ This means you can use `OS_USERNAME` or `OS_USERID`, `OS_TENANT_ID` or
|
|||
|
||||
The above example would be equivalent to an RC file looking like this :
|
||||
|
||||
export OS_AUTH_URL="https://identity.myprovider/v3"
|
||||
export OS_USERNAME="myuser"
|
||||
export OS_PASSWORD="password"
|
||||
export OS_USER_DOMAIN_NAME="mydomain"
|
||||
export OS_PROJECT_DOMAIN_NAME="mydomain"
|
||||
```shell
|
||||
export OS_AUTH_URL="https://identity.myprovider/v3"
|
||||
export OS_USERNAME="myuser"
|
||||
export OS_PASSWORD="password"
|
||||
export OS_USER_DOMAIN_NAME="mydomain"
|
||||
export OS_PROJECT_DOMAIN_NAME="mydomain"
|
||||
```
|
||||
|
||||
## Notes on OpenStack Authorization
|
||||
|
||||
|
@ -270,9 +271,12 @@ File v3_. Source the file, and select your wanted region by setting
|
|||
environment variable `OS_REGION_NAME` or `OS_REGION_ID` and `export
|
||||
OS_TENANT_NAME=$OS_PROJECT_NAME` or `export OS_TENANT_ID=$OS_PROJECT_ID`.
|
||||
|
||||
\~> `OS_TENANT_NAME` or `OS_TENANT_ID` must be used even with Identity v3,
|
||||
~> `OS_TENANT_NAME` or `OS_TENANT_ID` must be used even with Identity v3,
|
||||
`OS_PROJECT_NAME` and `OS_PROJECT_ID` has no effect in Packer.
|
||||
|
||||
To troubleshoot authorization issues test you environment variables with the
|
||||
OpenStack cli. It can be installed with
|
||||
```pip install --user python-openstackclient```.
|
||||
|
||||
```
|
||||
$ pip install --user python-openstackclient
|
||||
```
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
---
|
||||
description: |
|
||||
The Parallels Packer builder is able to create Parallels Desktop for Mac virtual
|
||||
machines and export them in the PVM format, starting from an ISO image.
|
||||
layout: docs
|
||||
page_title: 'Parallels Builder (from an ISO)'
|
||||
...
|
||||
sidebar_current: docs-builders-parallels-iso
|
||||
page_title: Parallels ISO - Builders
|
||||
description: |-
|
||||
The Parallels Packer builder is able to create Parallels Desktop for Mac
|
||||
virtual machines and export them in the PVM format, starting from an ISO
|
||||
image.
|
||||
---
|
||||
|
||||
# Parallels Builder (from an ISO)
|
||||
|
||||
|
@ -25,7 +27,7 @@ Here is a basic example. This example is not functional. It will start the OS
|
|||
installer but then fail because we don't provide the preseed file for Ubuntu to
|
||||
self-install. Still, the example serves to show the basic configuration:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"type": "parallels-iso",
|
||||
"guest_os_type": "ubuntu",
|
||||
|
@ -314,7 +316,7 @@ available variables are:
|
|||
Example boot command. This is actually a working boot command used to start an
|
||||
Ubuntu 12.04 installer:
|
||||
|
||||
``` {.text}
|
||||
```text
|
||||
[
|
||||
"<esc><esc><enter><wait>",
|
||||
"/install/vmlinuz noapic ",
|
||||
|
@ -340,7 +342,7 @@ Extra `prlctl` commands are defined in the template in the `prlctl` section. An
|
|||
example is shown below that sets the memory and number of CPUs within the
|
||||
virtual machine:
|
||||
|
||||
``` {.javascript}
|
||||
```json
|
||||
{
|
||||
"prlctl": [
|
||||
["set", "{{.Name}}", "--memsize", "1024"],
|
||||
|
|