Scavenger Hunt Instructions

We're aware that you're likely accessing this on your phone, but here's a sneak peek. To ensure you always have these essential instructions at your fingertips, no matter where you are, we're also sending you an email with all the same details. This way, you can easily refer back to them anytime you need.

IMPORTANT NOTICE: None of the following commands run against a real AWS Cloud environment. All AWS API requests are being redirected to the LocalStack container running on localhost:4566 on your local machine, including the Terraform configuration file (please feel free to check).
  1. Clone the Mystery: Head over to this repository and clone it to kickstart your adventure. Feel free to open it in your favorite IDE if you want to have a closer look.
  2. Tool Up: Before diving in, equip yourself with the essentials:

    Chances are, you've already got these steps in the bag! They're as essential to every AWS user as a hammer is to a carpenter's toolkit.

  3. Launch LocalStack:
    • Are you already a LocalStack user? Great! Grab your auth token, and let’s get to work.
      $ export LOCALSTACK_AUTH_TOKEN=<YOUR_AUTH_TOKEN>
    • If you're just joining us, let's start by getting you a token. Simply sign up here. Once in, you'll need a license. Click here to go where you need to be directly. Fret not, there is no payment information required.You'll find your Auth Token in the Workspace section in the left-hand panel. Don't forget to export it as an environment variable.
    • Fire up your engines by running docker compose up in the root folder to start the LocalStack container. In the unlikely situation of something going wrong, follow the instructions in the output logs.

      Now, the real fun begins!
  4. Invoke the Lambda: You can continue your journey in a separate Terminal tab. Unleash the secrets of the existing Lambda function on LocalStack with this command:
    $ aws --endpoint http://localhost.localstack.cloud:4566 lambda invoke
    --function-name first-step output.json
    Check the output.json file for your next clue!
  5. Patience is Key: Execute the command and hang tight. Great things take time, so don’t fret if it's not instant. It will take a few seconds.
    Pro Tip – First Hint: If you find yourself in a new shell instance than the one you used in step 3, remember to export your token here as well:
    $ export LOCALSTACK_AUTH_TOKEN=<YOUR_AUTH_TOKEN>
  6. Digital Expedition: Embark on a new quest by visiting https://clue2.s3-website.localhost.localstack.cloud:4566/ and unravel the instructions hidden there.
    Pro Tip – Second Hint: Lost? Here's a nudge in the right direction: Go to here, use the “Switch to Scan" button, and hit "Submit" to uncover your next lead.
  7. Focus and Find: In the 'Products' table, your keen eye will spot an item with a predestined name. Don't get sidetracked by other items! Follow its description to unlock the next secret.
    Pro Tip – Third Hint: In the Web App, navigate to the Resource Browser tab and look for the Secrets Manager service. That is where you'll find your next clue.
  8. Decipher and Deploy: The secret's description is a roadmap to your next destination — an Aurora PostgreSQL database in an RDS cluster concealing vital information. Execute the provided command in your terminal to uncover the hidden step.
  9. Clone Your Way to Success: You're closing in on the prize! A new repository will be unveiled. Clone it, and brace yourself for the grand finale.
  10. Terraforming the Endgame: Dive into the terraform folder. Here's where you bring the IaC magic to life on LocalStack. Run these commands to set the final pieces in motion.
    $ cd terraform
    $ terraform init
    $ terraform plan
    $ terraform apply --auto-approve
  11. The Ultimate Invocation: Invoke the new Lambda function with a pivotal command - make sure you use your real name, the one you provided when signing up for LocalStack:
    # aws-cli v1
    $ aws --endpoint http://localhost.localstack.cloud:4566 \
         lambda invoke \
          --function-name certification-lambda \

          --payload '{"name": "YOUR_FULL_NAME"}' \
          /tmp/lambda.out
    If you’re using the aws-cli v2 you will need to add --cli-binary-format raw-in-base64-out
    # aws-cli v2
    $ aws --endpoint http://localhost.localstack.cloud:4566 \
    lambda invoke \
         
         --cli-binary-format raw-in-base64-out \
         
          --function-name certification-lambda \
         
          --payload '{"name": "YOUR_FULL_NAME"}' \
         /tmp/lambda.out
    Now you're one step away from glory.
  12. The Final Reveal: Head back to the Web App and seek out the "local-certification" S3 bucket. A special reward awaits inside – your very own local cloud developer certificate!
    Pro Tip – Fourth Hint: If you can't find your way back, try navigating here.
  13. Victory Lap: Congratulations, daring explorer! You've successfully navigated through this grand adventure. What do you think of our tool? Your feedback is the key to our treasure chest of continuous improvement!
  14. Kick Back and Relax: No matter how long your resources remain active, rest assured there will be no extra costs. You're completely free from any such concerns!
  15. Now that you've earned your certificate, it's time to flaunt it. Share your triumph with us by sending the proof to reinvent@localstack.cloud, and get ready to be rewarded with some awesome swag. You've earned it!
Note: If you find yourself at a crossroads, return to these instructions for helpful hints. If this is not enough, we’re extending a lifeline - reach out to us on our community Slack! You can always count on our documentation page for help - just use the search engine.