Skip to content

jmontroy90/flyio-maelstrom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gossip Glomers

These are Golang solutions to Fly.io's Gossip Glomers distributed systems challenges, based on Maelstrom.

Getting Started

First step is to set up Maelstrom itself. Start with Fly.io's first part - cmd+F "Installing Maelstrom"; there are some Java prereqs you need first.

You also need a copy of Maelstrom to run locally. This repo setup expects it at ./maelstrom. Fly.io expects v0.2.3, which you can get here.

If you like, you can run this from the top level of this directory:

wget https://github.com/jepsen-io/maelstrom/releases/download/v0.2.3/maelstrom.tar.bz2 -O ./maelstrom.tar.bz2
tar -xjf ./maelstrom.tar.bz2 -C ./
rm ./maelstrom.tar.bz2

Running Challenges

This repo uses Magefile for make-like commands.

> mage
Targets:
  build            builds Go binary for {name}
  ls               lists the available challenge:part combos to run.
  run:challenge    runs the given {challenge}
  run:part         runs the given {challenge}, {part}.

Run a given challenge:

> mage run:challenge echo

Run a given part:

> mage run:part broadcast 3a

List all runnable challenges / parts (this will grow):

> mage ls
    - echo [-]
    - unique-ids [-]
    - broadcast [3a,3b,3c]

About

dist challenges

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages