diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index c5b20d2..fbf01aa 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -25,6 +25,8 @@ jobs: steps: - uses: actions/checkout@v4 - uses: actions/configure-pages@v5 + - name: Copy install script into site + run: cp install/install.sh docs/site/install.sh - uses: actions/upload-pages-artifact@v3 with: path: docs/site/ diff --git a/README.md b/README.md index a9faf77..c3ea0c8 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ ### curl (MacOS / Linux) ```bash - curl -fsSL https://raw.githubusercontent.com/seanseannery/opsfile/main/install/install.sh | bash + curl -fsSL https://seanseannery.github.io/opsfile/install.sh | bash ``` Detects your OS, downloads the correct binary from the [latest GitHub release](https://github.com/seanseannery/opsfile/releases/latest), and installs to `/usr/local/bin/ops`. diff --git a/docs/site/index.html b/docs/site/index.html index 532f483..4ee6ea2 100644 --- a/docs/site/index.html +++ b/docs/site/index.html @@ -69,7 +69,7 @@

Installation

-
curl -fsSL https://raw.githubusercontent.com/seanseannery/opsfile/main/install/install.sh | bash
+
curl -fsSL https://seanseannery.github.io/opsfile/install.sh | bash
@@ -99,15 +99,15 @@

Step 1: Create an Opsfile

# Use "default" as a fallback when env-specific block is absent tail-logs: default: - aws cloudwatch logs --tail $(AWS_ACCOUNT) + aws logs tail /aws/ecs/my-service --follow --since 30m local: - docker logs myapp --follow + docker logs myapp --follow --tail 100 list-instance-ips: prod: - aws ec2 --list-instances + aws ec2 describe-instances --filters "Name=tag:Env,Values=prod" --query "Reservations[*].Instances[*].PrivateIpAddress" --output text preprod: - aws ecs cluster --list-instances + aws ecs list-container-instances --cluster my-cluster-preprod --output text # Shell env vars are injected automatically โ€” ops falls back to env if not in Opsfile show-profile: @@ -121,7 +121,7 @@

Step 2: Run ops commands

$ ops [flags] <environment> <command> [args]
- +
@@ -173,6 +173,16 @@

Why use it?

Encapsulation

Keep your Makefile focused on CI/CD

+
+
๐Ÿค
+
Team Standardisation
+

No more tribal knowledge or Slack threads of bash one-liners. Opsfile lives in the repo โ€” every teammate runs the same command, the same way, every time.

+
+
+
๐Ÿ”’
+
Secrets-Safe by Design
+

Reference secrets via environment variables โ€” never commit credentials. Variables resolve from your shell at runtime, keeping sensitive values out of your repo.

+
@@ -194,6 +204,10 @@

Links

IssuesBug reports and feature requests + + Discussions + Questions, ideas, and community + @@ -201,7 +215,7 @@

Links

diff --git a/docs/site/style.css b/docs/site/style.css index 01e0712..ce30d2b 100644 --- a/docs/site/style.css +++ b/docs/site/style.css @@ -373,6 +373,44 @@ pre > code { user-select: none; } +/* โ”€โ”€โ”€ Flags Table โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ */ +.flags-table { + width: 100%; + border-collapse: collapse; + margin: 20px 0; + font-size: 0.9rem; +} + +.flags-table th { + background: var(--bg); + color: var(--cyan); + text-align: left; + padding: 10px 14px; + border-bottom: 2px solid var(--cyan); + font-family: monospace; + font-weight: bold; +} + +.flags-table td { + padding: 10px 14px; + border-bottom: 1px solid var(--subtle); + vertical-align: top; + color: var(--body); +} + +.flags-table tr:last-child td { + border-bottom: none; +} + +.flags-table tr:hover td { + background: var(--bg); +} + +.flags-table td code { + color: var(--orange); + font-family: monospace; +} + /* โ”€โ”€โ”€ Usage Section โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ */ #usage, .usage-section {
Flag