-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjustfile
More file actions
37 lines (27 loc) · 1.79 KB
/
justfile
File metadata and controls
37 lines (27 loc) · 1.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
run-greenmail:
docker run -t -i -p 3025:3025 -p 3110:3110 -p 3143:3143 -p 3465:3465 -p 3993:3993 -p 3995:3995 -p 8090:8080 -e GREENMAIL_OPTS='-Dgreenmail.verbose -Dgreenmail.setup.test.all -Dgreenmail.hostname=0.0.0.0 -Dgreenmail.auth.disabled' greenmail/standalone:2.1.8
# Send an email as user 'foo' with password 'a'
send-email recipient="user@example.com" subject="Test Mail" body="Hello from foo":
echo "{{body}}" | mail -s "{{subject}}" --mailer="smtp://foo:a@localhost:3025" -r foo@example.com {{recipient}}
cleanup-greenmail:
docker ps -a --format '{{"{{"}}.ID}} {{"{{"}}.Image}}' | grep 'greenmail' | awk '{print $1}' | xargs docker rm -f
# Create a folder on an IMAP server
# Usage: just create-folder <folder-name>
# For subfolders, use parent/child format like: just create-folder "INBOX/tests1"
create-folder folder server="localhost" port="3143" user="user@example.com" password="a":
python3 -c "import imaplib; c = imaplib.IMAP4('{{server}}', {{port}}); c.login('{{user}}', '{{password}}'); folder_name = '{{folder}}'; folder_name = folder_name.replace('/', '.'); result = c.create(folder_name); print('Created folder:', folder_name if result[0] == 'OK' else 'Failed:', result); c.logout()"
# Default target
default: build
build:
cargo build --release
extract-assets: build clean-assets
@echo "Extracting assets from build cache..."
@mkdir -p dist/man
@mkdir -p dist/completions
find target/release/build -name "*.1" -type f -exec cp {} dist/man/ \;
find target/release/build -name "*.bash" -type f -exec cp {} dist/completions/ \;
find target/release/build -name "*.fish" -type f -exec cp {} dist/completions/ \;
find target/release/build -name "_*" -type f -exec cp {} dist/completions/ \;
@echo "Assets ready in ./dist/"
clean-assets:
rm -rf dist