On this page
Docs release target that detects selfdoc.json projects, reads and writes version from selfdoc.json, and delegates build and deploy to the selfdoc CLI.
#rlsbl.targets.docs
#rlsbl.targets.docs
Docs target -- thin wrapper delegating to the selfdoc CLI so rlsbl can detect, build, and deploy selfdoc documentation sites without duplicating any of selfdoc's logic.
Detection is based on the presence of selfdoc.json in the project root. Build and deploy are delegated entirely to the selfdoc CLI tool.
#DocsTarget
Release target that delegates documentation to selfdoc.
#name
def name(self)#_selfdoc_available
def _selfdoc_available(self)Return True if the selfdoc CLI is installed and runnable.
#detect
def detect(self, dir_path)True if selfdoc.json exists in the given directory.
#read_version
def read_version(self, dir_path)Read version from selfdoc.json; fall back to '0.0.0' when absent.
#write_version
def write_version(self, dir_path, version)Write version to selfdoc.json atomically, preserving formatting.
#version_file
def version_file(self)Version is stored in selfdoc.json.
#tag_format
def tag_format(self, version)No separate tag -- uses primary target's tag.
#build
def build(self, dir_path, version)Delegate to selfdoc build.
#publish
def publish(self, dir_path, version)Delegate to selfdoc deploy, gated by per-target config and credentials.
Behaviour:
- config local=false: skip with message
- config local=true and selfdoc missing: error
- config local=true and selfdoc present: run
selfdoc deploy - no config: only attempt if both CF_ACCOUNT_ID and CF_PAGES_API_TOKEN
are set (and selfdoc is available); otherwise skip silently