Try adding docs
Some checks failed
/ build (push) Successful in 1m33s
Ruby / Ruby 3.3.5 (push) Failing after 14s

This commit is contained in:
Aleks Rutins 2025-06-10 18:11:38 -04:00
parent 15c0a1ccc0
commit 04e1d9eb91
Signed by: asr
SSH key fingerprint: SHA256:DBype7RrB3qCdOLdkvecD2Y3THOYgYOVw6jAHVgsGRQ
10 changed files with 144 additions and 74 deletions

View file

@ -0,0 +1,17 @@
on:
push:
branches:
- main
jobs:
build:
runs-on: selfhosted
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install dependencies
run: bundle install
- name: Build documentation
run: bundle exec ruby docs/build.rb
- name: Publish site
run: cp -rfv _build/* /srv/docs/phlexite/

View file

@ -0,0 +1,46 @@
name: Ruby Gem
on:
push:
tags: ["*"]
jobs:
build:
name: Build + Publish
runs-on: docs
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- name: Set up Ruby 3.3
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
# change this to (see https://github.com/ruby/setup-ruby#versioning):
# uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: 3.3.x
- name: Publish to GPR
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
env:
GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
OWNER: ${{ github.repository_owner }}
- name: Publish to RubyGems
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push *.gem
env:
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"

View file

@ -0,0 +1,27 @@
name: Ruby
on:
push:
branches:
- main
pull_request:
jobs:
build:
runs-on: docker
name: Ruby ${{ matrix.ruby }}
strategy:
matrix:
ruby:
- "3.3.5"
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run the default task
run: bundle exec rake

View file

@ -1,46 +0,0 @@
name: Ruby Gem
on:
push:
tags: '*'
jobs:
build:
name: Build + Publish
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- name: Set up Ruby 3.3
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
# change this to (see https://github.com/ruby/setup-ruby#versioning):
# uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: 3.3.x
- name: Publish to GPR
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
env:
GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
OWNER: ${{ github.repository_owner }}
- name: Publish to RubyGems
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push *.gem
env:
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"

View file

@ -1,27 +0,0 @@
name: Ruby
on:
push:
branches:
- main
pull_request:
jobs:
build:
runs-on: ubuntu-latest
name: Ruby ${{ matrix.ruby }}
strategy:
matrix:
ruby:
- '3.3.5'
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run the default task
run: bundle exec rake

1
.gitignore vendored
View file

@ -6,3 +6,4 @@
/pkg/
/spec/reports/
/tmp/
_build/

View file

@ -11,6 +11,6 @@ gem "minitest", "~> 5.16"
gem "standard", "~> 1.3"
gem "phlex", "~> 1.11"
gem "phlex", "~> 2.3"
gem "steep", "~> 1.7", group: :development

13
docs/build.rb Normal file
View file

@ -0,0 +1,13 @@
require_relative '../lib/phlexite'
require 'phlex'
module Phlexite
module Docs end
end
require_relative 'pages/layout'
require_relative 'pages/index'
Phlexite::Site.new { |s|
s.page 'index.html', Phlexite::Docs::Pages::Index.new
}

10
docs/pages/index.rb Normal file
View file

@ -0,0 +1,10 @@
module Phlexite::Docs::Pages
class Index < ::Phlex::HTML
def view_template
render Layout.new {
h1 { 'Phlexite' }
p { 'Phlexite is a simple static site generator for Ruby.' }
}
end
end
end

29
docs/pages/layout.rb Normal file
View file

@ -0,0 +1,29 @@
module Phlexite::Docs::Pages
class Layout < ::Phlex::HTML
def view_template
doctype
html {
head {
meta charset: 'utf-8'
meta name: 'viewport', content: 'width=device-width, initial-scale=1.0'
title { "Phlexite" }
link rel: 'stylesheet', href: 'https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css'
}
body(style: "padding: 0; margin: 0; display: flex; flex-direction: row; height: 100vh; width: 100vw;") {
aside(style: 'padding: 30px; min-width: 15%; border-right: 1px solid #6F7887;') {
nav {
ul {
li { a(href: '/') { 'Home' } }
}
}
}
div(class: 'container', style: 'padding: 20px') {
yield
}
}
}
end
end
end