mirror of
				https://github.com/containers/podman.git
				synced 2025-10-31 18:08:51 +08:00 
			
		
		
		
	 313c7118ea
			
		
	
	313c7118ea
	
	
	
		
			
			First and foremost: use ephemeral (/run, $XDG) directories
for systemd unit files, so as not to vandalize a working system.
Second, refactor common systemd-related functionality into
a new helper file, loaded by the systemd-related tests.
Shared functionality includes:
  * setting $XDG_RUNTIME_DIR if unset and rootless
  * setting $UNIT_DIR for use by tests
  * new systemctl() and journalctl() functions, which
    include "--user" when rootless (why can't systemd
    figure this out on its own?)
Signed-off-by: Ed Santiago <santiago@redhat.com>
		
	
		
			
				
	
	
		
			31 lines
		
	
	
		
			627 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			627 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # -*- bash -*-
 | |
| #
 | |
| # BATS helpers for systemd-related functionality
 | |
| #
 | |
| 
 | |
| # podman initializes this if unset, but systemctl doesn't
 | |
| if [ -z "$XDG_RUNTIME_DIR" ]; then
 | |
|     if is_rootless; then
 | |
|         export XDG_RUNTIME_DIR=/run/user/$(id -u)
 | |
|     fi
 | |
| fi
 | |
| 
 | |
| # For tests which write systemd unit files
 | |
| UNIT_DIR="/run/systemd/system"
 | |
| _DASHUSER=
 | |
| if is_rootless; then
 | |
|     UNIT_DIR="${XDG_RUNTIME_DIR}/systemd/user"
 | |
|     # Why isn't systemd smart enough to figure this out on its own?
 | |
|     _DASHUSER="--user"
 | |
| fi
 | |
| 
 | |
| mkdir -p $UNIT_DIR
 | |
| 
 | |
| systemctl() {
 | |
|     command systemctl $_DASHUSER "$@"
 | |
| }
 | |
| 
 | |
| journalctl() {
 | |
|     command journalctl $_DASHUSER "$@"
 | |
| }
 |