• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

skeema / skeema / 25829447167
92%
main: 92%

Build:
Build:
LAST BUILD BRANCH: mariadb123
DEFAULT BRANCH: main
Ran 13 May 2026 10:16PM UTC
Jobs 1
Files 81
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

13 May 2026 09:55PM UTC coverage: 92.491% (-0.04%) from 92.527%
25829447167

push

github

evanelias
host option: support external command shellouts directly

Skeema has always supported use of external commands for obtaining hostnames
via the host-wrapper option, which is designed to be configured a single time
generically in a top-level directory. However, that option requires that the
host option is still set in the appropriate subdir .skeema files -- even
if just set to a dummy/placeholder value, so that Skeema still knows which
dirs are supposed to map to hosts.

That host-wrapper setup can be unnecessarily confusing for cases where it is
more desirable to define the external command directly in each .skeema file
that should map to hosts, or in cases where there is only a single host-level
directory anyway.

This commit augments the host option accordingly, to provide a simpler
alternative to host-wrapper for these situations. Now, any value wrapped in
`backticks` is treated as an external shell command to execute. The command's
STDOUT is captured for use as the list of hostnames, just like host-wrapper's
functionality, but without needing to configure that separate option.

In the backtick-wrapped value, the following placeholder variables are
supported for dynamic interpolation:

  {ENVIRONMENT}: The environment name from the command-line
  {DIRNAME}:     Base name (last path component) of the dir being processed
  {DIRPATH}:     Full path of the dir being processed
  {SCHEMA}:      Schema name being processed, if constant or $ENV

To be clear, this commit does NOT deprecate the host-wrapper option, nor fully
replace all of its use-cases. In situations where a common service-discovery
program should be configured for schema repo containing many distinct database
clusters, the best approach for that situation is to stay with host-wrapper in
a top-level .skeema option file, and subdirs that define host as service-
discovery lookup keys.

In contrast, use of the new host=`...` functionality makes more sense in cases
where each subdir uses a diffe... (continued)

38 of 43 new or added lines in 3 files covered. (88.37%)

2 existing lines in 1 file now uncovered.

10962 of 11852 relevant lines covered (92.49%)

1.11 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
88.19
-0.28% cmd_pull.go
2
92.02
-2.0% internal/applier/target.go
1
93.26
0.02% internal/fs/dir.go

Coverage Regressions

Lines Coverage ∆ File
2
92.02
-2.0% internal/applier/target.go
Jobs
ID Job ID Ran Files Coverage
1 25829447167.1 13 May 2026 10:16PM UTC 81
92.49
GitHub Action Run
Source Files on build 25829447167
  • Tree
  • List 81
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 9617edcb on github
  • Prev Build on user-shellout (#25527778337)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc