#!/usr/bin/env bash
# For this to work, you also need to import the public key of any private key you want to use
# in the target server's pubring first.
if [ -z "$1" ];then
printf "USAGE: %b TARGET [OPTIONS...]\\n" "$(basename "$0")" >&2
exit 1
fi
TGT="$1"
REMUID="$(ssh "$TGT" "id -u")"
ssh "$TGT" 'killall gpg-agent 2>/dev/null;rm -f /run/user/$(id -u)/gnupg/S.*'
if [ -z "$REMUID" ];then
printf "Cannot fetch user id from %b.\\n" "$TGT" >&2
exit 2
fi
ssh -R "/run/user/${REMUID}/gnupg/S.gpg-agent":"/run/user/$(id -u)/gnupg/S.gpg-agent-extra" -o "StreamLocalBindUnlink=yes" "$TGT" "${@:2}"
dding:0;*/
width:auto;margin:0 auto;padding:0;
/*background-color:#fff;*/color:#000;
}
html {
width:100%;max-width:none;background: #c0c0c0 url('/assets/forest-2.svg') top center no-repeat fixed;
/*width:100%;max-width:none;background: rgba(192,192,192,0.5) url('./assets/forest-1.svg') top center no-repeat fixed;*/
background-size: 100% auto; /* 100% auto for keeping the aspect ratio */
}
/*html {
background:transparent url('./lirionnet-border-left.png') top left repeat-y scroll;
padding-left:10px;height:100%;
}
body {
background:transparent url('./lirionnet-border-right.png') top right repeat-y scroll;
padding-right:10px;overflow:auto;height:100%;
}
body>* {padding-left:10px;padding-right:10px;}*/
h1,h2,h3 {
font-family:'Alte DIN 1451 Mittelschrift gep','Alte DIN 1451 Mittelschrift','Alte DIN 1451',Futura,'Lucida Grande','Gill Sans',Verdana,Helvetica,sans-serif;
font-weight:normal;
}
header h1 a {
color: #000;
text-decoration: none;
}
#maint h2 {font-size:100%;padding:0;margin:0 auto;}
h1,h2,h3,h4,h5,h6 {/*text-rendering:optimizelegibility;*/}
h3 {font-size:120%;border-bottom:1px solid;}
header { width:auto;margin:0 auto;margin-top:2.8em;}
header h1 {
text-align:center;font-size:3.666em;margin:0 auto;
}
header h1+p {
text-align:center;font-style:italic;margin-top:0;text-transform:lowercase;font-size:0.9em;
}
#maint {
text-align:center;color:#b00;font-style:italic;font-size:2em;color:#fc9032;text-shadow: 1px 1px #999;
font-weight:bold;margin-top:4em;
}
nav {
position:absolute;top:0;left:0;
text-align:center;width:100%;
background-color:#333;color:#eee;
border-bottom:2px solid #111;font-size:0.9em;
}
nav>a {
display:inline-block;padding:0.5em 2em;
font-family:'Alte DIN 1451 Mittelschrift gep','Alte DIN 1451 Mittelschrift','Alte DIN 1451',Futura,'Lucida Grande','Gill Sans',Verdana,Helvetica,sans-serif;
text-transform:lowercase;color:#eee;
text-decoration:none;text-shadow:0.1em 0.1em #000;
font-size:1.3em;
width:1em;z-index:99;
/*border-left:1px solid #444;border-right:1px solid #444;*/
margin-left:0;margin-right:0;
}
nav > a:first-child {border-left:none;} nav > a:nth-last-child(1) , nav a:last-child {border-right:none;}
nav > a:hover {color:#a0e090;}
nav > a:before {font-family:"Elusive Icons";z-index:99;}
nav a[title="home"]:before {content:"\e6a3";}
nav a[title="links"]:before {content:"\e68f";}
nav a[title="about"]:before {content:"\e61f";}
nav a[title="contact"]:before {content:"\e6e1";}
nav a[title="teamspeak"]:before {content:"\e661";}
nav a[title="minecraft"]:before {content:"\e627";}
nav a[title="git"]:before {content:"\e6b8";}
nav a[title="blog"]:before {content:"\e671";}
nav a[title="philosophy"]:before {content:"\262f";}
nav a[title="hots"]:before {
content:" ";
background:transparent url('//lirion.de/heroes-of-the-storm.svg') center center;
background-size:1em 1em;
width:1em;height:1em;text-align:center;margin:0 auto;padding:0;display:inline-block;}
nav a[title="autoconf"]:before {content:"\e604";}
nav a[title="redhat"] {
background:transparent url('/assets/fedora.png') no-repeat center center;
/*background-size:auto 1.3em;*/
margin-right:-1em;
}
nav a[title="mastodon"]:before {content:"\e72a";}
nav a[title="packages"]:before {content:"\e69e";}
nav > a >span {display:none;font-size:0;width:1px;}
ul {list-style-type: square;}
/*section#maint {
background-color:rgba(204,204,204,.75);border-radius:8px;
-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3),
inset 0 5px rgba(255,255,255,0.2), inset 0 5px 10px rgba(255,255,255,0.25),
inset 0 -8px 15px rgba(0,0,0,0.3);
box-shadow: 0 1px 4px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3),
inset 0 5px rgba(255,255,255,0.2), inset 0 5px 10px rgba(255,255,255,0.25),
inset 0 -8px 15px rgba(0,0,0,0.3);
}*/
section,main.page-content,footer,#cgit {
/*background-color:rgba(245,245,245,.8);
box-shadow: 0 0 3px 0 rgba(0,0,0,0.25);*/
/*background-color:rgba(200,245,205,0.7);*/
background-color:rgba(210,240,216,0.7);
box-shadow:0 0 4px 0 rgba(0,10,0,0.4);
/*-moz-box-shadow: 0 0 3px 0 rgba(0,0,0,0.25);*/
padding:0.5em 1em;
margin:0 auto;
margin-top:2em;/*margin-bottom:2em;*/
max-width:70%;
}
div#cgit {
background-color:rgba(210,240,216,0.7)!important;
margin: auto;
margin-top:2em!important;
padding:1em!important;
width:75em!important;
font-family:"Telex","Helvetica Neue",Helvetica,Arial,sans-serif;
}
div#cgit div.content {background:#f5f5f5!important;overflow:auto;}
div#cgit div.footer {color:#888!important;}
div#cgit div.footer a {color:#666!important;}
#cgit h1,#cgit h2,#cgit h3 {
font-family:"Telex","Helvetica Neue",Helvetica,Arial,sans-serif;
}
div#cgit table#header td.main {word-spacing:0.1em;}
/*div#cgit pre {white-space:pre-wrap;} :( */
footer {margin-bottom:2em;}
section:nth-last-child(3) {margin-bottom:5em;}
section h2 {text-align:center;margin-top:0;padding-top:0;}
section a {text-decoration:none;}
section a, section a:visited {color:#007a37;}
section a:hover, section a:active {color:#e56b00;}
#links ul {list-style-type:none;text-transform:lowercase;}
/*#links ul li {border-bottom:1px solid #e0e0e0;padding:0.4em 0 0.3em 0;width:15em;margin:0 auto;text-align:center;}*/
#links ul li {padding:0.2em 0 0.3em 2em;margin:0.1em 0 0.1em 0;width:19em;}
#links ul li:nth-child(2n) {float:right;}
#links ul li:nth-child(4n) {background:rgba(80,80,80,0.1);}
#links ul li:nth-child(2n+1) {float:left;}
#links ul li:nth-child(4n-1) {background:rgba(80,80,80,0.1);}
#links:after {clear:both;content:" ";display:block;}
#teamspeak_srv {background-color:rgba(225,245,220,0.7);}
#teamspeak_srv>div.content {margin:0 auto;font-size:13px;width:29.5em;font-family:"Telex","Helvetica Neue",Helvetica,Arial,sans-serif;}
#teamspeak_srv div.copy { display:none!important; }
#teamspeak_srv .content:last-child { margin-bottom:2em; }
aside#ts3remark {margin-top:4em;font-size:66%;text-align:center;font-style:italic;}
#validate {
transform: rotate(45deg);
/*-webkit-transform: rotate(45deg); /*FUCK YOU CHROME, SAFARI AND OPERA*/
/*-ms-transform: rotate(45deg); /*FUCK YOU INTERNET EXPLORER 9 AND BELOW*/
position:fixed;bottom:0;left:0;text-align:center;text-transform:lowercase;width:100%;margin-left:-45.666%;margin-bottom:1.666em;
}
#validate > p {margin:0;font-weight:bold;}
#validate a {text-decoration:none;}
#validate a:hover{text-decoration:none;}
#validate > p:first-child {/*background:#0092bf;*/color:white;border-top:1px solid;border-color:#058;background:rgba(0,126,178,.8);}
#validate > p:nth-child(2) {/*background:#90c140;*/color:white;border-bottom:1px solid;border-color:#591;background:rgba(124,178,54,.8);}
#validate > p a {
color:white;display:inline-block;padding:0.3em 25px 0.3em 0.3em;box-sizing:content-box;height:100%;
background-size:auto 24px;
}
#validate > p:first-child a {
background:transparent url('/flags/html5.png') right center no-repeat scroll;
}
#validate > p:nth-child(2) a {
background:transparent url('/flags/css3.png') right center no-repeat scroll;
}
#validate > p span:last-child {display:none;}
/*#validate > p:last-child a {color:#3e7000;}
#validate > p:last-child a:hover {color:#c9910e;}*/
/*#mail h2:before {content:"\2709\fe0f\000a";display:block;font-size:4em;}*/
#mail h2:before {content:"\2709";display:block;font-size:4em;}
#mail,#philosophy,#hots {text-align:justify;}
#mail h2:before, #philosophy h2:before,#hots h2:before {
font-family:"Elusive Icons";
display:block;font-size:3em;font-weight:normal;
}
#mail h2:before {content:"\e6e1";}
#mail .remark,#philosophy .remark,#hots .remark {font-size:80%;margin-top:2em;font-style:italic;}
#mail strong,#philosophy strong {color:#a00;}
/*#philosophy h2:before {content:"\262f\fe0f\000a";display:block;font-size:4em;}*/
#philosophy h2:before {content:"\262f";}
#hots h2:before {
content:" ";
background:transparent url('//lirion.de/heroes-of-the-storm.svg') center center;
background-size:1.5em 1.5em;
width:1.5em;height:1.5em;text-align:center;margin:0 auto;padding:0;display:block;
}
#hots p#hotslogs {text-align:center; margin:0 auto;margin-bottom:1em;}
#rebuild {text-decoration:blink;color:#30c000;}
#os-releases {/*width:66.6%;*/margin-left:2em;}
#os-releases th {text-align:left;}
#os-releases tr:nth-child(2n-1) td {background-color:#bcd1c1;}
#os-releases tr td,#os-releases tr th {padding:0 0.75em;}
#os-releases tr td.hash {font-family:"DejaVu Sans Mono",Monospace,monospace,serif;font-size:90%;}
#nowww {
position:fixed;top:4em;right:1em;margin:0;padding:0;
background:transparent url('/assets/no_www.png') bottom right no-repeat;
background-size:80px auto;width:80px;height:80px;
}
#nowww a {
display:block;margin:0;padding:0;
width:80px;height:80px;
}
#nowww a span {display:none;}
div.markdown-body p:last-child { padding-bottom:1.5em; }
div#cgit {margin-bottom:2em;}
@keyframes fadeDown {
0% {
opacity: 0;
transform: translateY(-20px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
.fadeDown, header {
animation:fadeDown 1s ease;
}
/* jekyll */
header.post-header { margin-top: 0.1337em; }
.post h1 { font-size:2.1337em; text-align: left; }
.post h1+p { text-align: left; }
ul.post-list {
background: #f0f0f0;
list-style: none;
padding-inline-start: 0;
padding: 0.8em;
}
ul.post-list li { padding:0.4em; }
ul.post-list li:nth-child(2n-1) { background-color:#ffffff; }
ul.post-list li span.post-meta {
font-weight: bold;font-style: oblique;font-size:100%;
}
ul.post-list li span.post-meta:after { content: ':'; }
ul.post-list li h3 {
font-size: 100%;font-weight: normal; display: inline;
margin-left: 1em;
font-family: "Telex","Helvetica Neue",Helvetica,Arial,sans-serif;
border-bottom: none;
}
ul.post-list li h3 a {
text-decoration: none;
}
nav.blog-nav {
background: transparent;
position: static;
border: none;
}
.blog-nav .nav-trigger { display:none; }
.blog-nav .menu-icon { display:none; }
.post-content table {
margin-bottom: 30px;
width: 100%;
text-align: left;
color: #3f3f3f;
border-collapse: collapse;
border: 1px solid #d0d0d0; }
.post-content table tr:nth-child(odd) {
background-color: #e0e0e0; }
.post-content table tr:nth-child(even) {
background-color: #f0f0f0; }
.post-content table th, table td {
padding: 10px 15px; }
.post-content table th {
background-color: #f0f0f0;
border: 1px solid #dedede;
border-bottom-color: #c9c9c9; }
.post-content table td {
border: 1px solid #e8e8e8; }
.blog-nav a.page-link {
text-decoration: none;
font-size:110%;
border-left: 1px solid;
border-right: 1px solid;
margin-left: 0.1em;margin-right:0.1em;
padding-left:0.7331em;padding-right: 0.7331em;
display: inline-block;
}
.blog-nav a.page-link:first-child {
margin-left: 0;
border-left: 0;
}
.blog-nav a.page-link:last-child {
margin-right: 0;
border-right: 0;
}
figure.highlight {
margin: 0 auto;
margin-left: 1em;
padding: 0.666em;
}
figure.highlight pre {
margin-top: 0;
margin-bottom: 0;
overflow-x: auto;
overflow-y: hidden;
}
figure.highlight pre code, code.highlighter-rouge {
font-size: 0.8em;
}
article.post div.post-content, #tocw {
background: rgba(251,255,253,0.6);
padding: 0.666em;
}
main.page-content a, footer.site-footer a {
text-decoration: none;
color: #169b62;
font-weight: 550;
}
main.page-content a:hover, footer.site-footer a:hover, main.page-content a:active,
footer.site-footer a:active {
color: #ff883e;
}
.highlight { background: #e8fff0; }
#tocw ol {
list-style-type: decimal;
counter-reset: item;
padding-left: 10px;
}
#tocw ol li {
display: block;
}
#tocw > ol > li {
padding-left: 0.5em;
}
#tocw > ol > li > ol > li {
padding-left: 0.666em;
}
#tocw > ol > li > ol > li > ol > li {
padding-left: 1.337em;
}
#tocw ol li:before {
content: counters(item, ".") ". ";
counter-increment: item
}
/*main.page-content h2:before {
content: counter(heading)". ";
counter-increment: heading;
}
main.page-content h2 {
counter-reset: subheading;
}
main.page-content h3:before {
content: counter(heading)"." counter(subheading)". ";
counter-increment: subheading;
}*/
/**
* Syntax highlighting styles
*/
.highlight {
background: #fff; }
.highlighter-rouge .highlight {
background: #eef; }
.highlight .c {
color: #998;
font-style: italic; }
.highlight .err {
color: #a61717;
background-color: #e3d2d2; }
.highlight .k {
font-weight: bold; }
.highlight .o {
font-weight: bold; }
.highlight .cm {
color: #998;
font-style: italic; }
.highlight .cp {
color: #999;
font-weight: bold; }
.highlight .c1 {
color: #998;
font-style: italic; }
.highlight .cs {
color: #999;
font-weight: bold;
font-style: italic; }
.highlight .gd {
color: #000;
background-color: #fdd; }
.highlight .gd .x {
color: #000;
background-color: #faa; }
.highlight .ge {
font-style: italic; }
.highlight .gr {
color: #a00; }
.highlight .gh {
color: #999; }
.highlight .gi {
color: #000;
background-color: #dfd; }
.highlight .gi .x {
color: #000;
background-color: #afa; }
.highlight .go {
color: #888; }
.highlight .gp {
color: #555; }
.highlight .gs {
font-weight: bold; }
.highlight .gu {
color: #aaa; }
.highlight .gt {
color: #a00; }
.highlight .kc {
font-weight: bold; }
.highlight .kd {
font-weight: bold; }
.highlight .kp {
font-weight: bold; }
.highlight .kr {
font-weight: bold; }
.highlight .kt {
color: #458;
font-weight: bold; }
.highlight .m {
color: #099; }
.highlight .s {
color: #d14; }
.highlight .na {
color: #008080; }
.highlight .nb {
color: #0086B3; }
.highlight .nc {
color: #458;
font-weight: bold; }
.highlight .no {
color: #008080; }
.highlight .ni {
color: #800080; }
.highlight .ne {
color: #900;
font-weight: bold; }
.highlight .nf {
color: #900;
font-weight: bold; }
.highlight .nn {
color: #555; }
.highlight .nt {
color: #000080; }
.highlight .nv {
color: #008080; }
.highlight .ow {
font-weight: bold; }
.highlight .w {
color: #bbb; }
.highlight .mf {
color: #099; }
.highlight .mh {
color: #099; }
.highlight .mi {
color: #099; }
.highlight .mo {
color: #099; }
.highlight .sb {
color: #d14; }
.highlight .sc {
color: #d14; }
.highlight .sd {
color: #d14; }
.highlight .s2 {
color: #d14; }
.highlight .se {
color: #d14; }
.highlight .sh {
color: #d14; }
.highlight .si {
color: #d14; }
.highlight .sx {
color: #d14; }
.highlight .sr {
color: #009926; }
.highlight .s1 {
color: #d14; }
.highlight .ss {
color: #990073; }
.highlight .bp {
color: #999; }
.highlight .vc {
color: #008080; }
.highlight .vg {
color: #008080; }
.highlight .vi {
color: #008080; }
.highlight .il {
color: #099; }
git.lirion.de
Of git, get, and gud
lirion.de
Links
About
Contact
GIT
Blog
autoconf
packages
Mastodon
Commit message (Collapse ) Author Age Files Lines
|
|
|
|
|
|
|
|
|
|
|
|
|
Prior to this commit, if you used windows bash git when you clone
down the repo these files would get incorrect permissions which
make them unexecutable.
After this commit, due to some windows bash git magic I don't
understand it appears that adding the shebang to the beginning of
the file causes windows bash git to change the permissions to
so the file is executable.
This resolves https://github.com/puppetlabs/control-repo/issues/40
| \
| |
| |
Add GitHub instructions
| /
|
|
Per Issue https://github.com/puppetlabs/control-repo/issues/26
|
|
|
"Latest" stopped resolving several PE releases ago.
|
|
|
|
|
|
|
|
|
Prior to this commit, we mitigated issues with hiera-eyaml causing
a memory leak by setting max_requets_per_instance to 0
After this commit, we go back to the default for
max_requests_per_instance because the hiera-eyaml memory leak
has been resolved for months if you use the newest version
| \
| |
| |
Set the execute bit for CM config version script
| /
|
|
|
|
|
|
The execute bit needs to be set or CM will fail.
I think this was probably just missed when the
code_manager_config_version.rb file was added.
| \
| |
| |
Remove old role all_in_one_pe
| /
|
| \
| |
| |
light editing, mostly for style
| /
| \
| |
| |
Reduce the scope of the control-repo to mostly an example
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
Prior to this commit, the control-repo was an example of the
structure of a control repo but it also included puppet code to
help setup code manager and instructions to get that all setup
in a very specific way.
This was great for users that wanted to follow those instructions
exactly but wasn't great for people just looking for an example to
start from.
After this commit, the control-repo will be just an example once
again and a new repo somehwere else will pop up to provide the
explicit instructions on how to use the example with code manager.
There are links added to puppetlabs/control-repo to a new repo
that will have a version of the code that once lived in
puppetlabs/control-repo
| \ |
| |
| |
Move profiles out into their own modules
| |
| |
| |
| |
| |
| |
| |
| |
| |
Prior to this commit, there was a stash profile in the site dir
of this control-repo.
After this commit, the profile has been moved to it's own repo
where it can be used more generally and not tightly coupled to this
repository.
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
Prior to this commit, there was a gitlab profile in the site dir
of this control-repo.
After this commit, the profile has been moved to it's own repo
where it can be used more generally and not tightly coupled to this
repository.
As a result, the gitlab role has been removed from this repository
as well.
| /
|
|
|
|
|
|
|
Prior to this commit, the puppetmaster profile was embedded in this
control-repo.
After this commit, the puppetmaster profile is moved out into its
own module.
|
|
|
|
|
|
|
|
|
|
|
Prior to this commit, these two files were laying around but not used.
The code manager template was missed when the code was moved into
a module and the function was added a while ago but then never
put to use.
After this commit, the codebase is a little lighter without these
stale files.
| \
| |
| |
Move profile::git_webhook into seperate module pe_code_manager_webhook
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
Prior to this commit, we were using a pre-release version of the
pe_code_manager_webhook module in order to test that simply
re-namespacing the module form a profile to a module worked as
expected.
After this commit, we use the official 1.0.0 relase of the module
that includes a few changes that make it more versatile.
| /
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Prior to this commit the functionality to setup the either code
manager or zack/r10k was tightly coupled to this control-repo. In
an effort to make that functionality useful to more people we're
splitting it into a dedicated module.
After this commit, the pe_code_manager_webhook module will contain all logic
around setting up the webhook while this control-repo will still
gloss over the details needed to get everything in PE setup correctly
to use that module.
This commit removes the files associated with the profile including
some custom functions that were only there to make it work.
This commit removes the all_in_one_pe_2015_2 role as it was exactly
the same as the all_in_one_pe role.
This commit modifies all_in_one_pe to use the pe_code_manager_webhook module
instead of the profile.
| \
| |
| |
Fixed code so hunner/hiera can be pulled from forge
| |
| |
| \ \
| | |
| | |
Disable max-requests-per-instance to mitigate hiera-eyaml mem leak
| | /
| |
| |
| |
| |
| |
| |
| |
| |
Hiera-eyaml currently causes a memory leak in puppetsever when
max-requests-per-instnace is enabled. So, defaulting to disabling
max-requests-per-instance.
https://tickets.puppetlabs.com/browse/SERVER-1154
https://github.com/TomPoulton/hiera-eyaml/issues/163
| \ \
| | |
| | |
Corrected documentation grammar.
| / /
| \ \
| | /
| / |
Update all_in_one_pe_2015_2.pp
| /
|
|
|
Shouldn't this be profile::git_webhook as in all_in_one_pe.pp since the abstraction logic is located there?
Either that or the profile::zack_r10k_webook is missing from the location specified?
| \
| |
| |
Fix hostname on role creation curl command
| /
|
|
|
|
|
|
|
|
|
|
Prior to the this commit, if you were using the code_manager
profile on a split install it would incorrectly try to curl the
NC api on the master node.
After this commit, it should correctly curl the hostname of the NC
This has no impact on the functionality of the code on a monolithic
PE installation.
| \
| |
| |
Move hiera_config to main section of puppet.conf
| /
|
|
|
|
If it is in master instead of main then puppet apply will give a
warning.
| \
| |
| |
Changes for PE2015.3.0
| |
| |
| |
| |
| |
| |
| |
Mostly reorganized the README to be 2015.3 first and then have some
extra info at the bottom about upgrading from 2015.2.
Added a blurb about what the control-repo provides.
| |
| |
| |
| |
| |
| |
| |
| |
| |
Prior to this commit there was a requirement for the user of this
repo to create a RBAC role in order for code manager to work.
After this commit an exec statement will curl the RBAC API to
create the role one time and hopefully it works otherwise the exec
will not run again.