Skip to content
This repository has been archived by the owner on Oct 6, 2024. It is now read-only.

Initiate HashiStack #272

Merged
merged 1 commit into from
Sep 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -294,10 +294,10 @@
- name: Build website
run: yarn build
- name: Load CNAME file
if: github.ref == 'refs/heads/master'
#if: github.ref == 'refs/heads/master'

Check warning on line 297 in .github/workflows/ci-cd.yml

View workflow job for this annotation

GitHub Actions / yml-md-style-and-link-checks / YAML Style Check

297:10 [comments] missing starting space in comment
run: cp CNAME build
- name: Deploy to GitHub Pages
if: github.ref == 'refs/heads/master'
#if: github.ref == 'refs/heads/master'

Check warning on line 300 in .github/workflows/ci-cd.yml

View workflow job for this annotation

GitHub Actions / yml-md-style-and-link-checks / YAML Style Check

300:10 [comments] missing starting space in comment
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -309,7 +309,7 @@
name: Send Slack Notification
if: ${{ always() }}
needs: documentation
uses: QubitPi/hashicorp-aws/.github/workflows/slack-notification.yml@master
uses: QubitPi/hashistack/.github/workflows/slack-notification.yml@master
with:
job-status: ${{ needs.documentation.outputs.outcome }}
secrets:
Expand Down
2 changes: 2 additions & 0 deletions .lycheeignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
file:///*
https://ci-cd.hashicorp-aws.com/
http.*://maven.apache.org/*
https://hashistack.org/
https://ci-cd.hashistack.com/
59 changes: 33 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
HashiCorp AWS
=============
HashiStack
==========

<div align="center">
<img src="docs/static/img/logo.svg" width="20%" />

[![GitHub Workflow Status][GitHub Workflow Status Badge]][GitHub Workflow Status URL]
![GitHub Last Commit]
Expand All @@ -14,37 +13,41 @@ HashiCorp AWS

</div>

What is hashicorp-aws
---------------------
HashiStack is a __private cloud operating system that manages IT infrastructure through the practice of immutable
infrastructure__. Specifically, it

[hashicorp-aws] is a technology-agnostic framework for general Continuous Delivery/Deployment onto AWS through HashiCorp
1. deploys [OpenStack] as its cloud provider, and
2. adopts an opinionated [Immutable Infrastructure] approach via HashiCorp Packer & Terraform

The goal of [hashicorp-aws] is to **empower _individual_ to agnostically deploy and manage applications through the
practice of immutable infrastructure**.
> [!NOTE]
>
> If one is interested in non-OpenStack cloud provider as an alternative, please check out
> [immutable-infrastructure.com] which is a fork of this project that targets Amazon AWS <img src="https://github.com/QubitPi/QubitPi/blob/master/img/8%E5%A5%BD.gif?raw=true" height="40px"/>

![Error loading hashicorp-aws.png](./docs/docs/img/hashicorp-aws.png)
A Story behind HashiStack
------------------------

How the Amazing Story Began
---------------------------
My graduate school was, to a large extend, filled with a strong interest in Virtualization Technologies during a time
when the famous OpenStack was just released not long ago. The notion of _having our own private cloud_ at the dawn of
Cloud Computing dominance as well as the enormous opportunities to learn this complicated system of OpenStack just
fascinated me deeply.

I was researching deploying k8s (an idea which I abandoned later because I believed any production-quality application
should not be deployed onto k8s) online and Google came up a concept I was never heard of: [k8s through AMI](https://github.com/awslabs/amazon-eks-ami). It
was this GitHub repo that open up a whole new world to my career: HashiCorp, AWS AMI, and
[Immutable Infrastructure](https://www.hashicorp.com/resources/what-is-mutable-vs-immutable-infrastructure)

The notion of immutable infrastructure as advanced by HashiCorp grabbed my deep interests so intensively that kept
myself learning and that incubated the most important open source project of my life - [hashicorp-aws]. It condensed my
passion for the best practice of software infrastructure used myself and my company.
Few years after I was researching deploying k8s (an idea which I abandoned later because I believed any
production-quality application should not be deployed onto k8s) online and Google came up a concept I was never heard
of: [k8s through AMI](https://github.com/awslabs/amazon-eks-ami). It was this GitHub repo that introduced me the concept of Immutable Infrastructure. Coming
from a backend engineer background, I strongly resonates with the benefits of the Immutable Infrastructure and, most of
all, believe it acts as a key that bridges OpenStack to people's life. The _HashiStack_ was then initiated for __giving
each individual total control of every aspect of their technology lives__.

Documentation
-------------

More information about [hashicorp-aws] can be found at our [documentation][hashicorp-aws].
HashiStack is under its active development and its state-of-the-art documentation can be found at [hashistack.org](https://hashistack.org/)

License
-------

The use and distribution terms for [hashicorp-aws] are covered by the [Apache License, Version 2.0].
The use and distribution terms for [HashiStack]() are covered by the [Apache License, Version 2.0].

<div align="center">
<a href="https://opensource.org/licenses">
Expand All @@ -58,15 +61,19 @@ The use and distribution terms for [hashicorp-aws] are covered by the [Apache Li

[Discord]: https://img.shields.io/discord/1060753787125514332?color=5865F2&logo=discord&logoColor=ffffff&style=for-the-badge

[GitHub Last Commit]: https://img.shields.io/github/last-commit/QubitPi/hashicorp-aws/master?logo=github&style=for-the-badge
[GitHub Workflow Status Badge]: https://img.shields.io/github/actions/workflow/status/QubitPi/hashicorp-aws/ci-cd.yml?branch=master&logo=github&style=for-the-badge
[GitHub Workflow Status URL]: https://github.com/QubitPi/hashicorp-aws/actions/workflows/ci-cd.yml
[GitHub Last Commit]: https://img.shields.io/github/last-commit/QubitPi/hashistack/master?logo=github&style=for-the-badge
[GitHub Workflow Status Badge]: https://img.shields.io/github/actions/workflow/status/QubitPi/hashistack/ci-cd.yml?branch=master&logo=github&style=for-the-badge
[GitHub Workflow Status URL]: https://github.com/QubitPi/hashistack/actions/workflows/ci-cd.yml

[hashicorp-aws]: https://hashicorp-aws.com/
[hashistack]: https://hashistack.com/
[HashiCorp Packer Badge]: https://img.shields.io/badge/Packer-02A8EF?style=for-the-badge&logo=Packer&logoColor=white
[HashiCorp Packer URL]: https://packer.qubitpi.org/packer/docs
[HashiCorp Terraform Badge]: https://img.shields.io/badge/Terraform-7B42BC?style=for-the-badge&logo=terraform&logoColor=white
[HashiCorp Terraform URL]: https://terraform.qubitpi.org/terraform/docs

[Screwdriver pipeline URL]: https://ci-cd.hashicorp-aws.com
[Screwdriver pipeline URL]: https://ci-cd.hashistack.com
[Screwdriver pipeline badge]: https://img.shields.io/badge/Screwdriver%20Pipeline-1475BB?style=for-the-badge&logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBVcGxvYWRlZCB0bzogU1ZHIFJlcG8sIHd3dy5zdmdyZXBvLmNvbSwgR2VuZXJhdG9yOiBTVkcgUmVwbyBNaXhlciBUb29scyAtLT4NCjxzdmcgaGVpZ2h0PSI4MDBweCIgd2lkdGg9IjgwMHB4IiB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiANCgkgdmlld0JveD0iMCAwIDUxMiA1MTIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjsiIGQ9Ik01MDQuNzgzLDc3LjA5MWgtMC4wMDZIMzAzLjQ5NGMtMi4wMzYsMC0zLjk3NywwLjg1OS01LjM0NSwyLjM2Ng0KCWMtMS4zNjgsMS41MDgtMi4wMzgsMy41Mi0xLjg0Miw1LjU0OWwzLjkyNSw0MC42OTNjMC4zNDMsMy41NTIsMy4yMjgsNi4zMiw2Ljc5Miw2LjUxNmw0Mi4wNSwyLjMxNGwtODAuNzM2LDExMi4wMjNMMTgwLjI5Myw3MS4xNDINCglsNjMuNTYzLTIuNDNjMy44NDQtMC4xNDYsNi44OTYtMy4yNzYsNi45NDUtNy4xMjFsMC40NjQtMzYuMzkyYzAuMDIyLTEuOTMyLTAuNzI2LTMuNzkyLTIuMDgyLTUuMTY2DQoJYy0xLjM1Ni0xLjM3Mi0zLjIwNi0yLjE0Ny01LjEzNy0yLjE0N0g3LjIyYy0zLjk4OSwwLTcuMjIsMy4yMzEtNy4yMiw3LjIyMXY0MC41NThjMCwzLjk0NywzLjE3LDcuMTYzLDcuMTE1LDcuMjJsNjYuOTE3LDAuOTY0DQoJbDEyNy4yNTcsMjI0LjQ4OGwtMC41NjgsMTQwLjIwNWwtODguNDgsMy42MzFjLTMuODE3LDAuMTU1LTYuODUsMy4yNTktNi45MjMsNy4wNzdsLTAuNzE2LDM3LjUwNg0KCWMtMC4wMzcsMS45MzksMC43MDksMy44MSwyLjA2OSw1LjE5NmMxLjM1NiwxLjM4MywzLjIxMiwyLjE2MSw1LjE1MSwyLjE2MWgyNzYuNzYyYzEuOTgxLDAsMy44NzUtMC44MTMsNS4yMzktMi4yNDkNCgljMS4zNjMtMS40MzUsMi4wNzgtMy4zNjgsMS45NzQtNS4zNDZsLTEuOTMzLTM3LjEzMmMtMC4xOTItMy42OTItMy4xNC02LjY0MS02LjgzNS02LjgzNGwtNzYuMTI0LTMuOTkybC0xMS4wODItMTM2LjU3DQoJTDQzNi40NzksMTM3LjMzbDU1LjY0LTIuNTNjMy4wNjMtMC4xNDIsNS43MDQtMi4yMDIsNi41ODctNS4xMzlsMTIuOTA5LTQzLjAxOGMwLjI0OC0wLjcyOSwwLjM4NS0xLjUxNiwwLjM4NS0yLjMzMg0KCUM1MTIsODAuMzI1LDUwOC43NzIsNzcuMDkxLDUwNC43ODMsNzcuMDkxeiIvPg0KPC9zdmc+

[immutable-infrastructure.com]: https://immutable-infrastructure.com/
[Immutable Infrastructure]: https://www.hashicorp.com/resources/what-is-mutable-vs-immutable-infrastructure
[OpenStack]: https://www.openstack.org/software/
2 changes: 1 addition & 1 deletion docs/CNAME
Original file line number Diff line number Diff line change
@@ -1 +1 @@
hashicorp-aws.com
hashistack.org
2 changes: 1 addition & 1 deletion docs/blog/2024-02-23-github-secret/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@ be an effective way to manage and share a software configurations within a team.

[hashicorp-aws]'s github-secret now comes into play to bridge the gap between two componet.

[hashicorp-aws]: https://hashicorp-aws.com/
[hashicorp-aws]: https://hashistack.org/
2 changes: 1 addition & 1 deletion docs/docs/elk/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ a minute.
[AWS regions]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html#Concepts.RegionsAndAvailabilityZones.Availability
[AWS Security Group]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html

[hashicorp-aws]: https://hashicorp-aws.com/
[hashicorp-aws]: https://hashistack.org/
[hashicorp-aws/hashicorp/elk/images]: https://github.com/QubitPi/hashicorp-aws/tree/master/hashicorp/elk/images
[hashicorp-aws/hashicorp/elk/instances]: https://github.com/QubitPi/hashicorp-aws/tree/master/hashicorp/elk/instances
[HashiCorp Packer variable values file]: https://packer.qubitpi.org/packer/guides/hcl/variables#from-a-file
Expand Down
4 changes: 2 additions & 2 deletions docs/docs/webservice/github-actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ The following inputs are required:
The following GitHub Secrets needs to be defined:

- `AWS_WS_PKRVARS_HCL`: A [HashiCorp Packer variable values file] with the variable values presented
[here](https://hashicorp-aws.com/docs/webservice#defining-packer-variables)
[here](https://hashistack.org/docs/webservice#defining-packer-variables)
- `AWS_WS_TFVARS` - A [HashiCorp Terraform variable values file] with the variable values presented
[here](https://hashicorp-aws.com/docs/webservice#defining-terraform-variables)
[here](https://hashistack.org/docs/webservice#defining-terraform-variables)

- AWS credentials

Expand Down
18 changes: 9 additions & 9 deletions docs/docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@ import type {Config} from '@docusaurus/types';
import type * as Preset from '@docusaurus/preset-classic';

const config: Config = {
title: 'hashicorp-aws',
title: 'hashistack',
tagline: 'Infrastructure as Code via HashiCorp',
favicon: 'img/favicon.ico',

url: 'https://hashicorp-aws.com',
url: 'https://hashistack.org',
baseUrl: '/',
organizationName: 'QubitPi',
projectName: 'hashicorp-aws',
projectName: 'hashistack',

onBrokenLinks: 'warn',
onBrokenMarkdownLinks: 'warn',
Expand All @@ -41,12 +41,12 @@ const config: Config = {
{
docs: {
sidebarPath: './sidebars.ts',
editUrl: 'https://github.com/QubitPi/hashicorp-aws/tree/master/docs',
editUrl: 'https://github.com/QubitPi/hashistack/tree/master/docs',
},
blog: {
showReadingTime: true,
blogSidebarCount: 'ALL',
editUrl: 'https://github.com/QubitPi/hashicorp-aws/tree/master/docs',
editUrl: 'https://github.com/QubitPi/hashistack/tree/master/docs',
},
theme: {
customCss: './src/css/custom.css',
Expand All @@ -59,7 +59,7 @@ const config: Config = {
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg',
navbar: {
title: 'hashicorp-aws',
title: 'hashistack',
logo: {
alt: 'Site Logo',
src: 'img/logo.svg',
Expand All @@ -73,7 +73,7 @@ const config: Config = {
},
{to: '/blog', label: 'Blog', position: 'left'},
{
href: 'https://github.com/QubitPi/hashicorp-aws',
href: 'https://github.com/QubitPi/hashistack',
label: 'GitHub',
position: 'right',
},
Expand All @@ -96,7 +96,7 @@ const config: Config = {
items: [
{
label: 'Stack Overflow',
href: 'https://stackoverflow.com/questions/tagged/hashicorp-aws',
href: 'https://stackoverflow.com/questions/tagged/hashistack',
},
],
},
Expand All @@ -109,7 +109,7 @@ const config: Config = {
},
{
label: 'GitHub',
href: 'https://github.com/QubitPi/hashicorp-aws',
href: 'https://github.com/QubitPi/hashistack',
},
],
},
Expand Down
Loading