Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / App Innovation / AKS",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-01-App Innovation/02_AKS",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
FROM mcr.microsoft.com/devcontainers/base:ubuntu

RUN curl -fsSL https://raw.githubusercontent.com/microsoft/modernize-cli/main/scripts/install.sh | \
MODERNIZE_INSTALL_DIR=/usr/local/lib/modernize \
MODERNIZE_BIN_DIR=/usr/local/bin \
sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"name": "Azure / App Innovation / GHCP App Modernization",
"build": {
"dockerfile": "Dockerfile"
},
"features": {
"ghcr.io/devcontainers/features/dotnet:2": {
"version": "10.0"
},
"ghcr.io/devcontainers/features/java:1": {
"version": "25"
},
"ghcr.io/devcontainers/features/node:1": {
"version": "24"
},
"ghcr.io/devcontainers/features/azure-cli:1": {},
"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {},
"ghcr.io/devcontainers/features/github-cli:1": {},
"ghcr.io/devcontainers/features/copilot-cli:1": {}
},
"overrideFeatureInstallOrder": [
"ghcr.io/devcontainers/features/dotnet",
"ghcr.io/devcontainers/features/java",
"ghcr.io/devcontainers/features/node",
"ghcr.io/devcontainers/features/azure-cli",
"ghcr.io/devcontainers/features/docker-outside-of-docker",
"ghcr.io/devcontainers/features/github-cli",
"ghcr.io/devcontainers/features/copilot-cli"
],
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-01-App Innovation/03_GHCPAppModernization",
"customizations": {
"vscode": {
"extensions": [
"GitHub.copilot",
"GitHub.copilot-chat"
],
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Sovereign Cloud",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/01_Sovereign_Cloud",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Hybrid Azure Arc Servers",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/02_Hybrid_Azure_Arc_Servers",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Hybrid Azure Arc Kubernetes",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/03_Hybrid_Azure_Arc_Kubernetes",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / BCDR Azure Native",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/04_BCDR_Azure_Native",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Azure VMware Solution",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/05_Azure_VMware_Solution",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Migration Secure AI Ready",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/06_Migration_Secure_AI_Ready",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Azure Monitor",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/07_Azure_Monitor",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Oracle on Azure",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/10_Oracle_on_Azure",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / Infra / Azure Copilot",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-03-Infrastructure/12_Azure_Copilot",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
15 changes: 15 additions & 0 deletions .devcontainer/03-azure-01-04-ai-01-agentic-sdlc/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / AI / Agentic SDLC",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-04-AI/01_Agentic_SDLC",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / AI / Inventory Planning Fabric",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-04-AI/02_Inventory_Planning_Fabric",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / AI / Inventory Planning Agentic",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-04-AI/03_Inventory_Planning_Agentic",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / AI / Agentic Contract Lifecycle Management",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-04-AI/04_Agentic_Contract_Lifecycle_Management",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Azure / SAP / Cashflow Prediction",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/microhack,type=bind,consistency=cached",
"workspaceFolder": "/workspaces/microhack/03-Azure/01-05-SAP/01_MicroHack-SAP-Cashflow-Prediction",
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
}
}
},
"remoteUser": "vscode",
"postAttachCommand": "bash /workspaces/microhack/.devcontainer/welcome.sh"
}
20 changes: 20 additions & 0 deletions .devcontainer/welcome.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/usr/bin/env bash
# Shared welcome banner for all MicroHack devcontainers.
# Invoked via each config's "postAttachCommand" with the working directory
# set to that MicroHack's workspaceFolder.
set -uo pipefail

name="$(basename "$PWD")"

echo ""
echo "👋 Welcome to the ${name} MicroHack!"
echo ""

if [ -f "$PWD/README.md" ]; then
echo "Opening README.md to get you started..."
code "$PWD/README.md" >/dev/null 2>&1 || true
else
echo "No README.md found in this folder yet — check the MicroHack docs to get started."
fi

echo ""