Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

local development with fake-AWS things

1,036 views
Skip to first unread message

William Kahn-Greene

unread,
Mar 30, 2017, 9:47:11 AM3/30/17
to dev-webdev
What're people using as a "fake AWS" (s3, kms, sqs, etc) for local
development and testing?

Antenna was using fake-s3 in a docker container, but fake-s3 just went
closed source and it only did S3 anyhow, so I'm looking for
alternatives that are being used.

/will

Luke Crouch

unread,
Mar 30, 2017, 10:36:08 AM3/30/17
to William Kahn-Greene, dev-webdev
I'm using moto for shavar.

https://github.com/spulec/moto

-L

On Thu, Mar 30, 2017 at 8:47 AM, William Kahn-Greene <wil...@mozilla.com>
wrote:
> _______________________________________________
> dev-webdev mailing list
> dev-w...@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-webdev
>

Mauro Doglio

unread,
Mar 30, 2017, 10:41:35 AM3/30/17
to Luke Crouch, dev-webdev, William Kahn-Greene
We are using moto as well on a few telemetry projects, both in the form of
a python mock and as a standalone server:
- https://github.com/mozilla/python_moztelemetry (python)
- https://github.com/mozilla/moztelemetry (scala)

Mauro

Jannis Leidel

unread,
Mar 30, 2017, 10:44:53 AM3/30/17
to William Kahn-Greene, dev-webdev
I’ve used moto (https://github.com/spulec/moto) which hijacks AWS calls and provides fake in-memory APIs with state handling. It should work with both boto and boto3/botocore.

I’ve also looked at placebo (https://github.com/garnaat/placebo) which records AWS API calls into JSON files and allows replay. I haven’t used it so far since it didn’t match my requirements.

William Kahn-Greene

unread,
Mar 30, 2017, 10:50:09 AM3/30/17
to dev-webdev
That's super helpful--thank you!

In my research, I had looked at moto-server
(https://github.com/spulec/moto#stand-alone-server-mode) and
localstack (https://bitbucket.org/atlassian/localstack/overview).
localstack uses moto-server for some things, but the project seems
"new" and in flux. I'll see if I can get moto-server working in the
context I need.

If/when I get that working, would a blog post on setting it up as a
Docker container for local development be helpful to anyone?



On Thu, Mar 30, 2017 at 10:41 AM, Mauro Doglio <mdo...@mozilla.com> wrote:
> We are using moto as well on a few telemetry projects, both in the form of
> a python mock and as a standalone server:
> - https://github.com/mozilla/python_moztelemetry (python)
> - https://github.com/mozilla/moztelemetry (scala)
>
> Mauro
>
> On 30 March 2017 at 15:35, Luke Crouch <lcr...@mozilla.com> wrote:
>>
>> I'm using moto for shavar.
>>
>> https://github.com/spulec/moto
>>
>> -L
>>
>> On Thu, Mar 30, 2017 at 8:47 AM, William Kahn-Greene <wil...@mozilla.com>

David Durst

unread,
Mar 30, 2017, 11:59:42 AM3/30/17
to William Kahn-Greene, dev-webdev
> If/when I get that working, would a blog post on setting it up as a
> Docker container for local development be helpful to anyone?
>
>
​Absolutely. Please do.​

Jarek Śmiejczak

unread,
Mar 30, 2017, 7:01:38 PM3/30/17
to David Durst, dev-webdev, William Kahn-Greene
Hi,
I work for a company that uses AWS pretty heavily. We're testing stuff like
S3 in moto, because that part was implemented relatively well at the time.
We still use placebo because it's easier to mock specific scenarios in some
of services (e.g. AWS Lambda, API Gateway etc.).
Thanks for the info about Localstack -> I'll definetely check it out!
--
Kind regards

​Jarek "jotes" Śmiejczak,
​P​
ython programmer​ by day, mozillian by heart..
Homepage: https://evilb.it, Github: http://github.com/jotes
Mobile: +48693027040, Mozillian: http://mozillians.org/u/jotes

Michiel Kamermans

unread,
Mar 31, 2017, 12:49:12 AM3/31/17
to Jarek Śmiejczak, dev-webdev, William Kahn-Greene, David Durst
for dev that uses Node.js and relies on S3, we use noxmox (
https://github.com/nephics/noxmox) over on the MoFo side, which works
pretty well (I ended up writing a mox server for accessing the fakes S3
data for local dev that we used for a while over on
https://www.npmjs.com/package/mox-server, in case that might be useful)

- Pomax

William Kahn-Greene

unread,
Apr 28, 2017, 5:08:36 PM4/28/17
to dev-webdev
I re-read this thread and want to point out that I think there are two
different use cases here. One is about mocking AWS services in tests
(moto, placebo, noxmox, etc). The other is about running fake AWS
services in a separate Docker container so you can do development
locally (moto-server, mox-server, localstack, etc). These two use
cases are not mutually exclusive and I don't think one has to use the
same set of tools for both use cases.

The thing I was trying to solve was running an AWS-like service
locally in a Docker container so that I can run Antenna in an
environment on my local machine with all the services it requires.

I threw this blog post together. It's definitely missing bits because
it's entirely from my experiences, but maybe it's helpful?

http://bluesock.org/~willkg/blog/dev/using_localstack_for_s3.html

I haven't tried out the other Localstack AWS services, yet. I'll
probably do that in a month or two.

Hope it helps!

/will


On Fri, Mar 31, 2017 at 12:48 AM, Michiel Kamermans
<mic...@mozillafoundation.org> wrote:
> for dev that uses Node.js and relies on S3, we use noxmox
> (https://github.com/nephics/noxmox) over on the MoFo side, which works
0 new messages