Skip to content

Commit 9e30804

Browse files
committed
Extensions done
The docker extension file needs to move somewhere else but it is done
1 parent 75be9bc commit 9e30804

File tree

11 files changed

+123
-108
lines changed

11 files changed

+123
-108
lines changed

astro.config.mjs

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,28 @@ export default defineConfig({
148148
},
149149
{
150150
label: 'Extensions',
151-
autogenerate: {
152-
directory: '/aws/tooling/extensions',
153-
},
151+
items: [
152+
{
153+
label: 'Overview',
154+
slug: 'aws/tooling/extensions',
155+
},
156+
{
157+
label: 'Managing Extensions',
158+
slug: 'aws/tooling/extensions/managing-extensions',
159+
},
160+
{
161+
label: 'Developing Extensions',
162+
slug: 'aws/tooling/extensions/developing-extensions',
163+
},
164+
{
165+
label: 'Extensions Library',
166+
slug: 'aws/tooling/extensions/extensions-library',
167+
},
168+
{
169+
label: 'Official Extensions',
170+
link: 'https://app.localstack.cloud/extensions/library/',
171+
},
172+
],
154173
collapsed: true,
155174
},
156175
{
49 KB
Loading

src/content/docs/aws/tooling/extensions/developing-extensions.md renamed to src/content/docs/aws/tooling/extensions/developing-extensions.mdx

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ sidebar:
66
order: 4
77
---
88

9+
import { FileTree } from '@astrojs/starlight/components';
10+
911
## Introduction
1012

1113
This section provides a brief overview of how to develop your own extensions.
@@ -101,12 +103,12 @@ class ReadyAnnouncerExtension(Extension):
101103
LOG.info("my plugin is loaded and localstack is ready to roll!")
102104
```
103105

104-
{{< callout >}}
106+
:::note
105107
A note on importing LocalStack modules: since extensions run in the same Python process as the LocalStack runtime,
106108
you can also import other LocalStack modules outside the `localstack.extensions.api` module, and work with them.
107109
However, be aware that these modules are not part of our public API, and can change even with patch versions any time.
108110
Your extension may break in unexpected ways, and we cannot provide support for internal APIs.
109-
{{</callout>}}
111+
:::
110112

111113
## Packaging extensions
112114

@@ -172,7 +174,7 @@ Commands:
172174
First, create a new extension from a template.
173175
To use `localstack extensions dev new`, you will also need to install [cookiecutter](https://github.com/cookiecutter/cookiecutter) via `pip install cookiecutter`.
174176

175-
{{< command >}}
177+
```bash
176178
$ localstack extensions dev new
177179
project_name [My LocalStack Extension]:
178180
project_short_description [All the boilerplate you need to create a LocalStack extension.]:
@@ -182,37 +184,37 @@ full_name [Jane Doe]:
182184
183185
github_username [janedoe]:
184186
version [0.1.0]:
185-
{{< / command >}}
187+
```
186188

187189
This will create a new Python project with the following layout:
188190

189-
```bash
190-
my-localstack-extension
191-
├── Makefile
192-
├── my_localstack_extension
193-
│ ├── extension.py
194-
│ └── __init__.py
195-
├── README.md
196-
├── setup.cfg
197-
└── setup.py
198-
```
191+
<FileTree>
192+
- my-localstack-extension
193+
- Makefile
194+
- my_localstack_extension
195+
- extension.py
196+
- __init__.py
197+
- README.md
198+
- setup.cfg
199+
- setup.py
200+
</FileTree>
199201

200202
Then run `make install` in the newly created project to make a distribution package.
201203

202204
### Start LocalStack with the extension
203205

204206
To start LocalStack with the extension in dev mode, first enable it by running:
205207

206-
{{< command >}}
208+
```bash
207209
$ localstack extensions dev enable ./my-localstack-extension
208-
{{< / command >}}
210+
```
209211

210212
Then, start LocalStack with `EXTENSION_DEV_MODE=1`
211213

212-
{{< command >}}
214+
```bash
213215
$ EXTENSION_DEV_MODE=1 LOCALSTACK_AUTH_TOKEN=...
214216
localstack start
215-
{{< / command >}}
217+
```
216218

217219
In the LocalStack logs you should then see something like:
218220

@@ -230,9 +232,10 @@ Now, when you make changes to your extensions, you just need to restart LocalSta
230232

231233
Once your extension is ready to be used, release it on a public GitHub repository.
232234
To make your extension easily installable for everyone generate an extension badge for your extension on this page.
233-
The resulting badge should look like this <img src="https://localstack.cloud/gh/extension-badge.svg" alt="Extension badge">.
234-
You can create a one-click installer for your extension using our [Extension Installer](https://app.localstack.cloud/extensions/remote).
235+
The resulting badge should look like this:
236+
237+
![Extension badge](https://localstack.cloud/gh/extension-badge.svg)
235238

236-
{{< figure src="extension-installer.png" >}}
239+
You can create a one-click installer for your extension using our [Extension Installer](https://app.localstack.cloud/extensions/remote).
237240

238-
<!-- TODO: add screenshot of installer with a specific extension, currently doesn't work -->
241+
![Extension Installer](/images/aws/extension-installer.png)

src/content/docs/aws/tooling/extensions/extensions-library.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ A LocalStack extension is a Python application that runs together with LocalStac
1313

1414
LocalStack extensions are available to licensed users, and the list of available extensions can be found in the [Extensions Library](https://app.localstack.cloud/extensions/library).
1515

16-
<img src="extensions-library-ui.png" alt="LocalStack Extensions Library" title="LocalStack Extensions Library" width="900" />
16+
![LocalStack Extensions Library](/images/aws/extensions-library-ui.png)
1717

1818
## Installing an Extension
1919

@@ -29,4 +29,4 @@ Click **Continue** to proceed.
2929
You can further manage the installed extensions by navigating to the **Extensions** tab in the LocalStack Instance page.
3030
You can remove an Extension by clicking the **Remove** button.
3131

32-
<img src="extensions-library-management.png" alt="Installed LocalStack Extensions Library" title="Installed LocalStack Extensions Library" width="900" />
32+
![Installed LocalStack Extensions Library](/images/aws/extensions-library-management.png)

src/content/docs/aws/tooling/extensions/getting-started.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ In this guide, you will install and use the [official MailHog extension for Loca
2222
To get started, start your LocalStack instance with your `LOCALSTACK_AUTH_TOKEN`.
2323
Access our [Extension Manager](https://app.localstack.cloud/inst/default/extensions/manage), and click the **Install** button for the MailHog extension.
2424

25-
{{< figure src="install-extensions.png" alt="Extensions Manager" width="800">}}
25+
![Extensions Manager](/images/aws/install-extensions.png)
2626

2727
You'll receive a confirmation prompt indicating that LocalStack container will restart, after which the extension will become accessible.
2828
Check your LocalStack logs for MailHog extension output, where you should see relevant logging information:
@@ -47,33 +47,33 @@ You can use the [`VerifyEmailIdentity`](https://docs.aws.amazon.com/cli/latest/r
4747
This is a required step before you can send emails from SES.
4848
Run the following command to verify an email address:
4949

50-
{{< command >}}
50+
```bash
5151
$ aws --endpoint-url=http://localhost:4566 \
5252
ses verify-email-identity --email-address [email protected]
53-
{{< /command >}}
53+
```
5454

5555
You can further send an email using the [`SendEmail`](https://docs.aws.amazon.com/cli/latest/reference/ses/send-email.html) API.
5656
Run the following command to send an email:
5757

58-
{{< command >}}
58+
```bash
5959
$ aws --endpoint-url=http://localhost:4566 \
6060
ses send-email \
6161
6262
--message 'Body={Text={Data="Hello from LocalStack to MailHog"}},Subject={Data=Test Email}' \
6363
--destination '[email protected]'
64-
{{< /command >}}
64+
```
6565

6666
### Navigate to Extension UI
6767

6868
Navigate in your browser to the [MailHog UI in LocalStack](http://mailhog.localhost.localstack.cloud:4566/).
6969
You should see the email you sent in the MailHog UI.
7070

71-
{{< figure src="mailhog.png" alt="Mailhog UI" width="800">}}
71+
![Mailhog UI](/images/aws/mailhog.png)
7272

7373
## Next steps
7474

7575
- Explore our collection of official extensions, along with a growing ecosystem of third-party extensions, in our [Extensions Library](https://app.localstack.cloud/extensions/library).
7676
- Learn about the various methods for extension management and automating their installation when using LocalStack in a CI environment.
77-
Get detailed insights from our [Managing Extensions]({{< ref "managing-extensions" >}}) guide.
77+
Get detailed insights from our [Managing Extensions](/aws/tooling/extensions/managing-extensions) guide.
7878
- Want to create your own extensions?
79-
Dive into our guide on [Developing Extensions]({{< ref "developing-extensions" >}}) for step-by-step instructions.
79+
Dive into our guide on [Developing Extensions](/aws/tooling/extensions/developing-extensions) for step-by-step instructions.

src/content/docs/aws/tooling/extensions/index.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ sidebar:
66
order: 1
77
---
88

9-
{{< figure src="https://user-images.githubusercontent.com/3996682/184503940-c30bfcac-e049-4ee4-b905-207b340111d1.png" >}}
9+
10+
![LocalStack Extensions](/images/aws/localstack-extensions-header.png)
1011

1112
LocalStack Extensions allow developers to extend and customize LocalStack.
1213
Extensions are a feature of our paid offering.
@@ -21,10 +22,10 @@ You can use LocalStack Extensions to:
2122
- Instrumenting AWS requests with additional information before they reach your Lambdas.
2223
- Logging AWS API calls to custom data backends.
2324

24-
The officially supported [LocalStack Extensions]({{< ref "user-guide/extensions/official-extensions" >}}) can be discovered on our [Extension Library](https://app.localstack.cloud/extensions/library).
25+
The officially supported [LocalStack Extensions]({/aws/tooling/extensions/official-extensions) can be discovered on our [Extension Library](https://app.localstack.cloud/extensions/library).
2526
To install and use extensions, you need an active LocalStack license.
2627

27-
{{< callout >}}
28+
:::note
2829
The feature and the API are currently in a preview stage and may be subject to change.
2930
Please report any issues or feature requests on [LocalStack Extension's GitHub repository](https://github.com/localstack/localstack-extensions).
30-
{{< /callout >}}
31+
:::

src/content/docs/aws/tooling/extensions/localstack-docker-extension.md

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,33 +11,32 @@ sidebar:
1111
The LocalStack Extension for Docker Desktop enables developers working with LocalStack to operate their LocalStack container via Docker Desktop, including checking service status, container logs, and configuring profiles.
1212
To install the LocalStack Extension for Docker Desktop, you need to have [Docker Desktop installed on your machine](https://www.docker.com/products/docker-desktop).
1313

14-
<img src="localstack-docker-extension.png" alt="LocalStack Extension for Docker Desktop" title="LocalStack Extension for Docker Desktop" width="800px" />
14+
![LocalStack Extension for Docker Desktop](/images/aws/localstack-docker-extension.png)
1515

1616
## Installation
1717

1818
To utilize LocalStack's Docker Extension, it is necessary to have a recent version of Docker Desktop (v4.8 or higher) installed on the local machine.
1919
To enable the extension, access the **Extensions** tab and select the **Enable Docker Extensions** and **Show Docker Extensions system containers** option.
2020

21-
<img src="localstack-docker-extension-preferences.png" title="Enable Docker Extensions in the Preferences within the Extensions tab" alt="Enable Docker Extensions in the Preferences within the Extensions tab" width="800px" />
22-
<br></br>
21+
![Enable Docker Extensions in the Preferences within the Extensions tab](/images/aws/localstack-docker-extension-preferences.png)
2322

2423
The LocalStack Extension for Docker Desktop has been validated and can be accessed on the Extensions Marketplace.
2524
To begin using it, navigate to the **Extensions Marketplace**, search for **LocalStack**, and click the **Install** button to proceed with the installation.
2625

27-
<img src="localstack-docker-extension-marketplace.png" title="Discover the LocalStack Extension on the Docker Desktop Marketplace and install it!" width="800px" alt="Discover the LocalStack Extension on the Docker Desktop Marketplace and install it!" />
28-
<br></br>
26+
![Discover the LocalStack Extension on the Docker Desktop Marketplace and install it!](/images/aws/localstack-docker-extension-marketplace.png)
2927

3028
An alternative method for installing the LocalStack's Extension for Docker Desktop is pulling the [public Docker image](https://hub.docker.com/r/localstack/localstack-docker-desktop) from Docker Hub and installing it!
3129

32-
{{< command >}}
33-
$ docker extension install localstack/localstack-docker-desktop:0.5.3
34-
{{< /command >}}
30+
```bash
31+
docker extension install localstack/localstack-docker-desktop:0.5.3
32+
```
3533

3634
After installation, you can access the LocalStack Extension for Docker Desktop from the **Extensions** tab.
3735
Upon the initial launch of the extension, a prompt to select a mount point for the LocalStack container will appear.
3836
Select your username from the drop-down menu.
3937
Furthermore, you can modify this setting later by navigating to the **Configurations** tab and choosing a different mount point.
4038

39+
![](/images/aws/)
4140
<img src="localstack-docker-extension-mount-point.png" title="Select the mount point upon the launch of LocalStack's Docker extension" alt="Select the mount point upon the launch of LocalStack's Docker extension" width="800px" />
4241

4342
## Features
@@ -50,19 +49,19 @@ The extension includes container management, configuration profile management, s
5049
You can start, stop, and restart LocalStack from the Docker Desktop.
5150
You can also see the current status of your LocalStack container and navigate to LocalStack Web Application.
5251

53-
<img src="localstack-docker-extension-start.png" title="Start and Stop your LocalStack container with a single click of a button with LocalStack's extension" alt="Start and Stop your LocalStack container with a single click of a button with LocalStack's extension" width="800px" />
52+
![Start and Stop your LocalStack container with a single click of a button with LocalStack's extension](/images/aws/localstack-docker-extension-start.png)
5453

5554
### Container logs
5655

5756
You can see the log information of the LocalStack container and all the available services and their status on the service page.
5857

59-
<img src="localstack-docker-extension-logs.png" title="Check the logs of your running LocalStack container through LocalStack's Docker extension" alt="Check the logs of your running LocalStack container through LocalStack's Docker extension" width="800px" />
58+
![Check the logs of your running LocalStack container through LocalStack's Docker extension](/images/aws/localstack-docker-extension-logs.png)
6059

6160
### Configuration management
6261

6362
You can manage and use your profiles via configurations and create new configurations for your LocalStack container.
6463

65-
<img src="localstack-docker-extension-configuration-profile.png" title="Create your configuration profiles within LocalStack's Extension to affect the state of LocalStack" alt="Create your configuration profiles within LocalStack's Extension to affect the state of LocalStack" width="800px" />
64+
![Create your configuration profiles within LocalStack's Extension to affect the state of LocalStack](/images/aws/localstack-docker-extension-configuration-profile.png)
6665

6766
## Configure an Auth Token
6867

0 commit comments

Comments
 (0)