setup:
	export EAGER_SERVICE_LOADING=1 \
		   SERVICES=lambda,ssm \
		   AWS_ACCESS_KEY_ID=test \
		   AWS_SECRET_ACCESS_KEY=test
	dockerd &
	FILESYSTEM_ROOT=./.cache/localstack/volume localstack start &
	zip -r handler.zip ./*
	awslocal lambda create-function \
		--function-name rss-nostr-lambda \
		--runtime nodejs20.x \
		--timeout 900 \
		--zip-file fileb://handler.zip \
		--handler index.handler \
		--role arn:aws:iam::000000000000:role/lambda-role \
		--region us-east-1
	awslocal ssm put-parameter \
		--name /rss-nostr-lambda/last-run-time \
		--value "2023-11-24T00:00:00Z" \
		--overwrite
	rm handler.zip

invoke:
	awslocal lambda invoke \
		--region us-east-1 \
	   	--function-name rss-nostr-lambda \
		--cli-binary-format raw-in-base64-out \
		--payload '{"dryRun":true,"feedUrl":"https://nitter.1d4.us/culturaltutor/rss","nostrNsec":"nsec1wp68lflspznnmelmjh5ktflyv6c4ljf8xrlkey0w8yqr4305awcs8wyakj","lastRunTimeParam":"/rss-nostr-lambda/last-run-time"}' \
		response.json

recreate:
	zip -r handler.zip ./*
	unset PYTHONPATH
	awslocal lambda update-function-code \
		--function-name rss-nostr-lambda \
		--zip-file fileb://handler.zip
	rm handler.zip

cleanup:
	awslocal lambda delete-function \
		--function-name rss-nostr-lambda
