Conversation
Standardize CLI help text by removing trailing periods across all Click command/option help strings
* Remove trailing periods from CLI help text * Fix missed trailing period in config compare help
#21) - Discovery methods now catch PermissionError per-domain instead of crashing entire list (e.g. PIA dirs with 750 perms no longer block app/prcs discovery) - find_domain() scopes to requested type, avoiding unnecessary discovery - _find_domain() in commands catches errors cleanly instead of raw traceback
…ed file operations (#22)
…h auto-detect (#24) F7: Add "is not started" pattern to status parser for app/prcs domains F9: Fallback message when psadmin returns empty output on stop/kill F3: PIA discovery uses config.xml for detection, globs DPK WAR path for properties F5: PRCS/PIA inline status checks filesystem markers instead of hardcoded unknown F1: Add ps_app_home/ps_cust_home to PsaConfig; auto-detect PS paths from runtime user env F4: Filed as #23 (deferred — needs design decision)
psadmin on some servers returns raw tmadmin tables (BBL, PSAPPSRV, etc.) instead of summary "X processes running" lines. Detect BBL + "Prog Name" header as running indicator for app/prcs domains. Also reorder stopped checks before running checks so "is not started" can't accidentally match a running pattern.
psadmin returns just "Started" for running prcs domains on some servers.
…nds (#27) - Verbosity enum + run_step() helper in output.py with spinner + checkmark UX - Global -q/-v flags in cli.py callback - Domain commands use run_step() for multi-step operations (bounce, reconfigure, restart) - Single-action commands (start/stop/configure/flush/purge/kill) wrapped in run_step() - status --verbose shows full output, list --verbose shows config columns - print_info/success/warning silenced in QUIET, print_error always prints - Remove unused --verbose from ops report, --quiet from dpk apply/data sync - New test_output.py covering verbosity and run_step behavior
- configure now stops domain before configuring; add --restart to start after - Remove reconfigure (replaced by configure --restart) - stop/kill on already-stopped domains warn instead of failing - bounce/restart stop substeps only warn on real failures - Add _is_already_stopped() helper reusing status parser - Add skip_domain_confirm config field - Tests for all new behavior
Show yellow ~ instead of red x when stop/kill fails on an already-stopped domain. Updated all 5 stop substep callers.
* Add warn_if to run_step for already-stopped domain warnings Show yellow ~ instead of red x when stop/kill fails on an already-stopped domain. Updated all 5 stop substep callers. * Add psa config set, always prompt in all-mode, show bypass hint
- Add _is_already_purged() helper: warn instead of fail when cache empty - Guard all 8 summary blocks with len(domains) > 1 to skip redundant ratio message for single-domain commands - Add tests for already-purged and single-domain-no-summary
… ops (#36) - New `psa domain compare` command: local archive, --ops (API), --file modes - New `src/psa/core/compare.py`: archive listing, INI/properties parsing, diff - Add `get_latest_config()` to ApiClient - Move `set-env` from domain to `psa ops set-env` with proper ApiClient usage - Delete old drift command + tests, add compare + set-env tests
Real psappsrv.cfg contains %VAR% interpolation tokens that ConfigParser chokes on. RawConfigParser skips interpolation.
* Add human-friendly age display to archive backup selection * Bump version to 0.2.0
Show ps_app_home, ps_cust_home, multi_homes in Paths section. Add Options section with sudo_enabled, parallel_boot, skip_domain_confirm. Show zone and suppress_fact_warnings in PSA-OPS section.
* Consolidate dpk commands: move prereq/postcfg/hiera/modules/site into setup/sync as flags * Add psa kit command, 3-tier hiera, PSA_KIT/PSA_CUST config support
- Add dpk_repo_path to PsaConfig (load/save/settable) - New DpkRepo class + DpkVersion dataclass for PCM repo scanning - New `psa dpk repo init/status/list` subcommands - Add --version to `psa dpk stage` with resolution via DpkRepo - 27 tests covering repo logic, commands, and config integration
dry-run skips file copy so install_dir is empty; search repo_path instead when in dry-run mode
psa-kit is private; HTTPS clone fails without auth. Try SSH first, clean up and retry HTTPS if SSH fails.
* dpk setup: sudo prefix, prereq check in --prereq mode, --fix flag, 2hr timeout - All setup/cleanup/postcfg commands auto-prefix sudo when not root - --prereq mode now runs _check_dpk_prerequisites before Oracle script - New --fix flag auto-installs missing packages without prompting - Timeout increased from 1hr to 2hr for full DPK installs - 5 new unit tests for _check_dpk_prerequisites * Pipe "n" to --prereq script to skip Oracle inventory prompt Oracle's psft-dpk-setup.sh --prereq asks interactively whether to grant non-root users access to Oracle central inventory. When run non-interactively, stdin EOF causes an exception. Pipe "n\n" via subprocess input to auto-decline (root via sudo needs no addition). * Use shell pipe instead of subprocess input for prereq stdin subprocess.run(input=) doesn't reliably pass stdin through sudo. Use echo n | shell pipe which works correctly.
* Add libnsl to DPK prereq checks for OL8/RHEL8+ (#55) OUI Tuxedo clone fails on OL8 without libnsl.so.1. Add to TUXEDO_REQUIRED_LIBS and use pkg_map for lib→package mapping. * Fix _verify_puppet to use DPK relocatable Puppet path only
Split init() into standalone_setup() and ops_setup(). Move compare command and _resolve_domain_id to ops.py. Remove register command (consolidated into ops setup). Update all hint strings.
* Move ops commands from config to ops group, remove register Split init() into standalone_setup() and ops_setup(). Move compare command and _resolve_domain_id to ops.py. Remove register command (consolidated into ops setup). Update all hint strings. * Bump version to 0.2.2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
configtoopsgrouppsa ops setup --urlreplacespsa config setup --ops-urlpsa ops comparereplacespsa config comparepsa ops registerremoved (consolidated intoops setup)Full changelog
32 commits from staging since 0.2.0