-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
311 lines (212 loc) · 13.8 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
<!DOCTYPE html>
<html>
<head>
<meta name="generator" content="Hugo 0.16" />
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>MrGossett - MrGossett</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<meta name="keywords" content="">
<link rel="canonical" href="http://mrgossett.com/">
<link rel="stylesheet" type="text/css" href="http://mrgossett.com/css/basscss.css">
<link rel="stylesheet" type="text/css" href="http://mrgossett.com/css/main.css">
<link rel="stylesheet" type="text/css" href="http://mrgossett.com/css/highlight/styles/xcode.css">
<link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Ubuntu:400,700,400italic,700italic&subset=latin,cyrillic-ext,cyrillic'>
<link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Lato:900,300'>
</head>
<body class="">
<div class="site-wrap">
<header class="site-header px2 px-responsive">
<div class="mt2 wrap">
<div class="measure">
<a href="http://mrgossett.com/" class="site-title">
MrGossett
</a>
<nav class="site-nav right">
<a href="http://mrgossett.com/tags">Tags</a>
</nav>
<div class="clearfix"></div>
</div>
</div>
</header>
<div class="post p2 p-responsive wrap" role="main">
<div class="measure">
<div class="home">
<div class="posts">
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/ssh-config-stomping-grounds/">
<p class="post-meta left">Jun 11, 2016</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">~/.ssh/config - Stomping Grounds </h3>
<p class="post-summary">This is part of a series explaining the SSH config I’m using on my machine (OS X 10.11). The config should be portable to most UNIX-based systems; Windows users are on their own. A majority of the SSH traffic produced by an operator is to and from running VMs. My SSH config makes it easier to quickly and securely connect to VMs. Host jump* Host jump* applies to any hostname that starts with “jump”.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/sh">sh</a>
,
<a href="http://mrgossett.com//tags/rc">rc</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/ssh-config-github/">
<p class="post-meta left">Jun 4, 2016</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">~/.ssh/config - GitHub </h3>
<p class="post-summary">This is part of a series explaining the SSH config I’m using on my machine (OS X 10.11). The config should be portable to most UNIX-based systems; Windows users are on their own. A majority of the SSH traffic produced by a developer is to and from GitHub. My SSH config adds a little tuning specific to github.com. Host github.com Host github.com applies to any SSH traffic (including git over SSH) routed to the github.com hostname.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/sh">sh</a>
,
<a href="http://mrgossett.com//tags/rc">rc</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/ssh-config-global-settings/">
<p class="post-meta left">May 14, 2016</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">~/.ssh/config - Global Settings </h3>
<p class="post-summary">This is part of a series explaining the SSH config I’m using on my machine (OS X 10.11). The config should be portable to most UNIX-based systems; Windows users are on their own. Quick Primer Every time the SSH client is invoked, it looks for settings in ~/.ssh/config (as well as some other places). The same is true for utilities that use SSH as a transport such as scp and sftp.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/sh">sh</a>
,
<a href="http://mrgossett.com//tags/rc">rc</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/eb-config-deploy/">
<p class="post-meta left">Nov 9, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">eb config --> deploy </h3>
<p class="post-summary">I learned something useful the other day. We use AWS ElasticBeanstalk (let’s just call it EB) at work for deploying the various components of our SOA. I use the eb CLI tool a lot when working with those EB apps. EB stores the configuration data it needs for each app as a YAML file in S3. One of the commands the eb CLI provides is eb config, which allows management of those YAML files from the command line: eb config list to list the saved configurations in S3 eb config save to download a YAML file that describes the current configuration of the app eb config put to upload a YAML file from local disk to S3 etc.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/AWS">AWS</a>
,
<a href="http://mrgossett.com//tags/bash">bash</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/docker-inspect-grep/">
<p class="post-meta left">Oct 19, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">docker inspect | grep </h3>
<p class="post-summary">We’ve dockerized all of the apps the comprise our platform at work. Almost all of the configuration data that our apps need is provided via environment variables. Sometimes I need to verify that the correct configuration was provided for a particular environment variable. I’ve executed the following command enough times now that I figured I should write it down somewhere. # $cid is the target container's ID, and $var is some part of the environment variable's name docker inspect -f '{{range $_, $e := .Config.Environment}}{{println $e}}{{end}}' $cid | grep $var This executes docker inspect with a Go template that will loop through the container’s environment variables (which are stored as a flat array of strings like ["VAR1=value1", "VAR2=value2"]) and print each variable on a new line.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/docker">docker</a>
,
<a href="http://mrgossett.com//tags/bash">bash</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/inverted-switch/">
<p class="post-meta left">Aug 9, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">Inverted Switch </h3>
<p class="post-summary">Go is great for building APIs. It’s common for APIs to perform some validation on the data structures used in request bodies. some structure Assume we’re handling a request with the following body: { "thing_id": 123, "foo": "fizz", "bar": "buzz", "some_date": "2015-08-09T07:25:43-05:00" } This can be unmarshalled onto the following Go struct: type SomeRequest struct { ThingID int64 `json:"thing_id"` Foo, Bar string SomeDate time.Time `json:"some_date"` } package json will do the heavy lifting to parse the date and convert the JSON numeric into an int64.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/go">go</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/gitconfig/">
<p class="post-meta left">May 14, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">~/.gitconfig aliases </h3>
<p class="post-summary">I use git from the command line as part of my regular workflow. Configuring aliases saves just a few keystrokes, but those keystrokes add up (My bash history says I’ve executed git commands 121 times in my current shell session, which has spanned about two workdays). I have git itself aliased to g in my ~/.bashrc. git allows aliasing subcommands in the [alias] section of ~/.gitconfig. Below are my aliases in workflow order: Fetch & Checkout To kick it off, I typically git fetch from remote to make sure git is aware of the branches that exist on the remote end.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/rc">rc</a>
,
<a href="http://mrgossett.com//tags/bash">bash</a>
,
<a href="http://mrgossett.com//tags/git">git</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/mux-vars-problem/">
<p class="post-meta left">Apr 14, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">The mux.Vars Problem </h3>
<p class="post-summary">We’ve begun to use github.com/gorilla/mux at work as a router for many of our services. I ran into a snag when writing some unit tests, and learned a bit about the design of mux in the process. A quick detour When I say “unit tests”, I mean this: … a software development process in which the smallest testable parts of an application, called units, are individually and independently scrutinized for proper operation.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/go">go</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/golangrc/">
<p class="post-meta left">Mar 25, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">~/.golangrc </h3>
<p class="post-summary">TL;DR I wrote some bash functions that are a regular part of my workflow. Check them out Go source I have Go’s source cloned in ~/goroot. Since the source is now managed with git, I can switch between versions very easily, and I can browse the source for Go’s standard library using my editor. To clone the source, I did this: git clone https://go.googlesource.com/go ~/goroot Since this constitutes “installing [Go] to a custom location”, Go will need a few environment variables set: export GOROOT=$HOME/goroot export GOPATH=$HOME/go export GOBIN=$GOROOT/bin export PATH=$GOBIN:$PATH Helper functions I wrote a few helper functions which are basically aliases for commands I execute often.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/rc">rc</a>
,
<a href="http://mrgossett.com//tags/go">go</a>
,
<a href="http://mrgossett.com//tags/bash">bash</a>
</p>
</div>
<div class="post">
<a class="post-link" href="http://mrgossett.com/post/collaborative-apps-go-citrix/">
<p class="post-meta left">Mar 17, 2015</p>
<p class="post-author right">Written by Tim Gossett</p>
<div class="clearfix"></div>
<h3 class="h2 post-title">Collaborative Apps with Go at Citrix </h3>
<p class="post-summary">Reposted from the Firebase blog Collaborative Apps with Go at Citrix Tim Gossett and his colleague Steven Berlanga are Backend Developers for the Realtime Platform Group at Citrix. They build services to enable collaborative web and mobile apps. Our team is developing realtime communications technology, and we’re using Firebase for low-latency data sync. Our platform provides a rally point for mobile and web clients to connect and start collaborating. Part of that collaboration happens in Firebase.</p>
</a>
<p class="post-meta">Tags:
<a href="http://mrgossett.com//tags/Firebase">Firebase</a>
,
<a href="http://mrgossett.com//tags/go">go</a>
</p>
</div>
</div>
</div>
<div class="paginatin_area">
<div class="pagination clearfix mb1 mt4">
<div class="left">
<span class="pagination-item disabled">Newer</span>
</div>
<div class="right">
<a class="pagination-item" href="http://mrgossett.com/page/2/">Older</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="p2 wrap">
<div class="measure mt1 center">
<nav class="social-icons icons">
<a class="fa fa-rss rss" href="http://mrgossett.com/index.xml"></a>
<a class="fa fa-twitter twitter" href="https://twitter.com/MrGossett"></a>
</nav>
<small>
Copyright © 2015<br>
Powered by <a href="http://gohugo.io/" target="_blank">Hugo</a> & <a href="https://github.com/azmelanar/hugo-theme-pixyll" target="_blank">Pixyll</a>
</small>
</div>
</div>
</footer>
<script src="http://mrgossett.com/js/highlight.pack.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
</body>
</html>