<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>kave.github.io</title>
		<description>A brain dump of written articles & slides</description>
		<link>/</link>
		<atom:link href="/rss.xml" rel="self" type="application/rss+xml" />
		
			<item>
				<title>Application Secrets with AWS</title>
				<description>&lt;h4 id=&quot;devops-days-dc-presentation-slides-application-secrets-with-aws&quot;&gt;Devops Days DC Presentation Slides: &lt;a href=&quot;https://grouchy-dev.s3.us-east-2.amazonaws.com/Application+Secret+Management+w_+AWS.pdf&quot;&gt;Application Secrets with AWS&lt;/a&gt;&lt;/h4&gt;

&lt;h4 id=&quot;medium-blogs&quot;&gt;Medium Blogs&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://engineering.upside.com/from-lastpass-to-aws-parameter-store-f277c03dd8c9&quot;&gt;From LastPass to AWS Parameter Store&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
				<pubDate>Fri, 12 Jul 2019 00:00:00 +0000</pubDate>
				<link>/general/2019/07/12/application-secrets.html</link>
				<guid isPermaLink="true">/general/2019/07/12/application-secrets.html</guid>
			</item>
		
			<item>
				<title>Deploying Python Slackbot to Heroku</title>
				<description>&lt;h2 id=&quot;deploying-python-based-slackbot-to-heroku&quot;&gt;Deploying Python based Slackbot to Heroku&lt;/h2&gt;

&lt;hr /&gt;

&lt;p&gt;I decided to create this guide, because Heroku deployments aren’t always as intuitive as we expect them to be.&lt;/p&gt;

&lt;h3 id=&quot;getting-setup&quot;&gt;Getting Setup&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;For this guide i forked a popular python based &lt;a href=&quot;https://github.com/lins05/slackbot&quot;&gt;slackbot&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Added my own custom responses, i’ll skip this section as lins &lt;a href=&quot;https://github.com/lins05/slackbot/blob/develop/README.md&quot;&gt;README&lt;/a&gt; is self explanatory&lt;/li&gt;
  &lt;li&gt;So now your ready to deploy your bot so its a standable entity, heroku is perfect for this because deployment is easy &amp;amp; its free.99&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;procfile&quot;&gt;Procfile&lt;/h3&gt;
&lt;p&gt;A &lt;a href=&quot;https://devcenter.heroku.com/articles/procfile&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Procfile&lt;/code&gt;&lt;/a&gt; contains a number of process type declarations, each on a new line. Each process type is a declaration of a command that is executed when a dyno of that process type is started.&lt;/p&gt;

&lt;p&gt;Create a Procfile:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;web: python run.py
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;heroku&quot;&gt;Heroku&lt;/h3&gt;

&lt;p&gt;Ensure you have a Heroku account and installed their &lt;a href=&quot;https://devcenter.heroku.com/articles/heroku-cli&quot;&gt;command line tools&lt;/a&gt;&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;heroku update
heroku login
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Now its time to create/connect to your heroku app and configure your remote url.&lt;/p&gt;

&lt;p&gt;If you don’t have an existing app:
    &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;
    heroku create
   &lt;/code&gt;&lt;/p&gt;

&lt;p&gt;else:
    &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;
    heroku git:remote -a &amp;lt;app-name&amp;gt;
   &lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Visit your Heroku Dashboard for your app and ensure you have set the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;SLACKBOT_API_TOKEN&lt;/code&gt; environment variable.&lt;/p&gt;

&lt;p&gt;Now that you have your remote url setup:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;git push heroku &amp;lt;branch_name&amp;gt;
heroku ps:scale web=1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You will see this error when you visit your heroku URL. This is expected because this is a bot…. 
not a website so there is no index.html on port 80 ;)&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://s3.amazonaws.com/kave-dump/application_error.png&quot; alt=&quot;Application Error&quot; style=&quot;width: 50%;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Test your bot on slack!&lt;/p&gt;

&lt;hr /&gt;
</description>
				<pubDate>Wed, 14 Dec 2016 00:00:00 +0000</pubDate>
				<link>/general/2016/12/14/Deploying-Python-Slackbot-To-Heroku.html</link>
				<guid isPermaLink="true">/general/2016/12/14/Deploying-Python-Slackbot-To-Heroku.html</guid>
			</item>
		
			<item>
				<title>Blogging with Github and Jekyll</title>
				<description>&lt;h2 id=&quot;so-you-want-to-blog&quot;&gt;So You Want To Blog&lt;/h2&gt;

&lt;hr /&gt;

&lt;h3 id=&quot;github-pages&quot;&gt;Github Pages&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;Free hosting of your static sites directly from your repository&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;jekyll&quot;&gt;Jekyll&lt;/h3&gt;
&lt;p&gt;It takes a template directory containing raw text files in various formats, runs it through a &lt;a href=&quot;https://help.github.com/articles/markdown-basics/&quot;&gt;Markdown&lt;/a&gt; converter and &lt;a href=&quot;http://liquidmarkup.org/&quot;&gt;Liquid template renderer&lt;/a&gt;. Then spits out a complete, ready-to-publish static website suitable for serving with your favorite web server. &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Simple to use
    &lt;ul&gt;
      &lt;li&gt;No Database&lt;/li&gt;
      &lt;li&gt;Focus on content&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Static Templates
    &lt;ul&gt;
      &lt;li&gt;Markdown&lt;/li&gt;
      &lt;li&gt;Html/CSS&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;hr /&gt;

&lt;h1 id=&quot;installation-setup&quot;&gt;Installation Setup&lt;/h1&gt;
&lt;p&gt;Log into GitHub and create a new repository named &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;username.github.io&lt;/code&gt;, where username is your username (or organization name) on GitHub.
Clone your repo in your workspace.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cd workspace
git clone git@github.com:{username}/{username}.github.io
cd {username}.github.io
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Clone Starter Blog Template into a separate directory and then manually move contents into your &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;{username}.github.io&lt;/code&gt; directory&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;git clone https://github.com/kave/blog-starter-template
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;cd into &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;{username}.github.io&lt;/code&gt; directory and build &amp;amp; run server&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./install.sh
./runserver.sh
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Visit Your Blog Page&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;http://127.0.0.1:4000/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Push to Github&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;git add .
git cm &quot;My initial blog commit&quot;
git push origin master
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Visit url &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;http://{username}.github.io&lt;/code&gt;&lt;/p&gt;

&lt;hr /&gt;
</description>
				<pubDate>Sun, 24 Jan 2016 00:00:00 +0000</pubDate>
				<link>/general/2016/01/24/Blogging-with-Github-and-Jekyll.html</link>
				<guid isPermaLink="true">/general/2016/01/24/Blogging-with-Github-and-Jekyll.html</guid>
			</item>
		
			<item>
				<title>A List of Wagtail StreamField Icons</title>
				<description>&lt;p&gt;##A simple list of StreamField Icons##
&lt;img src=&quot;https://s3.amazonaws.com/kave-dump/StreamField+Icons.png&quot; alt=&quot;StreamField Icons&quot; /&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;To enable the &lt;strong&gt;Wagtail Admin Stylesheet&lt;/strong&gt; for local use.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;INSTALLED_APPS = (
   ...
   'wagtail.contrib.wagtailstyleguide',
   ...
)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Access the guide at &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;http://localhost:8000/admin/styleguide/&lt;/code&gt;&lt;/p&gt;

&lt;hr /&gt;
</description>
				<pubDate>Sun, 06 Dec 2015 00:00:00 +0000</pubDate>
				<link>/general/2015/12/06/wagtail-streamfield-icons.html</link>
				<guid isPermaLink="true">/general/2015/12/06/wagtail-streamfield-icons.html</guid>
			</item>
		
	</channel>
</rss>
