Skip to content

Commit

Permalink
build: Final tweaks for Minnesota release
Browse files Browse the repository at this point in the history
Signed-off-by: Leonard Goodell <leonard.goodell@intel.com>
  • Loading branch information
Leonard Goodell committed Jun 1, 2023
1 parent 7f90567 commit 60fe0b7
Show file tree
Hide file tree
Showing 25 changed files with 74 additions and 160 deletions.
59 changes: 0 additions & 59 deletions Jenkinsfile

This file was deleted.

29 changes: 9 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,9 @@
## Edgex Docker Compose
[![Build Status](https://jenkins.edgexfoundry.org/view/EdgeX%20Foundry%20Project/job/edgexfoundry/job/edgex-compose/job/main/badge/icon)](https://jenkins.edgexfoundry.org/view/EdgeX%20Foundry%20Project/job/edgexfoundry/job/edgex-compose/job/main/) [![GitHub License](https://img.shields.io/github/license/edgexfoundry/edgex-compose)](https://choosealicense.com/licenses/apache-2.0/) [![GitHub Pull Requests](https://img.shields.io/github/issues-pr-raw/edgexfoundry/edgex-compose)](https://github.com/edgexfoundry/edgex-compose/pulls) [![GitHub Contributors](https://img.shields.io/github/contributors/edgexfoundry/edgex-compose)](https://github.com/edgexfoundry/edgex-compose/contributors) [![GitHub Committers](https://img.shields.io/badge/team-committers-green)](https://github.com/orgs/edgexfoundry/teams/edgex-compose-committers/members) [![GitHub Commit Activity](https://img.shields.io/github/commit-activity/m/edgexfoundry/edgex-compose)](https://github.com/edgexfoundry/edgex-compose/commits)


This repository contains the docker compose files for EdgeX releases.

> **Note:** Each release is now on it's own branch named after the release codename. You can view all branches [here](https://github.com/edgexfoundry/edgex-compose/branches/all).
This `branch` contains the `pre-release` docker compose files that pull and run the EdgeX images from the Nexus3 docker registry that are tagged with `master`. These images are built from the Edgex CI Pipeline when PRs are merged into the `master` branch.

> **Note**: Docker does not re-pull newer instances of these images. You must pull the new image instances. See the `make pull` command described below that will do this for you.
These `pre-release` docker compose files are generated from the multiple source compose files located in the `compose-builder` folder. See [README](compose-builder/README.md) there for details on regenerating these files after making changes to the source files.
## Edgex Docker Compose (Minnesota)

This branch contains the docker compose files that pull and run the **EdgeX Minnesota** release images.

These compose files are auto generated from the multiple files contained in the `compose-builder` folder.
See Compose Builder [README](https://github.com/edgexfoundry/edgex-compose/blob/minnesota/compose-builder/README.md) for details.

### Compose Tool

Expand All @@ -22,14 +13,12 @@ See https://docs.docker.com/compose/install/ for installation details for the la

### Compose Files

This folder contains the following compose files:

#### Generated Compose files
This folder contains the following generated compose files:

> **NOTES: **
> **Note to Developers:**
>
> - *DO NOT EDIT the files directly for permanent changes. Make all permanent changes to the source compose files in the `compose-builder` folder and then regenerate these files*
> - Use `make build` from `Compose Builder` to regenerate all the following compose files.
> - Use `make build` from **Compose Builder** to regenerate all the following compose files.
> - See each description for the convenience `make` commands that are provided to work with each of these compose files.
- **docker-compose.yml**
Expand Down Expand Up @@ -107,10 +96,10 @@ The compose files under the `taf` subfolder are used for the automated TAF tests
Runs `down` command and removes all stopped containers, all volumes and all networks used by the EdgeX stack. Use this command when needing to do a fresh restart.

- `make get-token`
For secure mode only. Runs commands via docker to generate a new API Gateway token.
For secure mode only. Runs command via docker to generate a new API Gateway token.

- `make get-consul-acl-token`
For secure mode only. Runs commands via docker to retrieve a Consul Access token.
For secure mode only. Runs command via docker to retrieve a Consul Access token.

### Additional compose files

Expand Down
4 changes: 2 additions & 2 deletions compose-builder/.env
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ DEVICE_VIRTUAL_VERSION=3.0.0
DEVICE_LLRP_VERSION=3.0.0
DEVICE_COAP_VERSION=3.0.0
DEVICE_GPIO_VERSION=3.0.0
DEVICE_ONVIFCAM_VERSION=latest
DEVICE_USBCAM_VERSION=latest
DEVICE_ONVIFCAM_VERSION=3.0.0
DEVICE_USBCAM_VERSION=3.0.0

VAULT_VERSION=1.13.2
CONSUL_VERSION=1.15.2
Expand Down
42 changes: 13 additions & 29 deletions compose-builder/README.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,25 @@
## Edgex Docker Compose Builder
## Edgex Docker Compose Builder (Minnesota)

This folder contains the `Compose Builder` which is made up of **source** compose, **environment** files and a **makefile** for building the single file docker composes files. The `master` branch builds the `pre-release` compose files which are placed in the top level of this repository.
This folder contains the `Compose Builder` which is made up of **source** compose and environment files and **makefile**
for building the single file docker composes files configured for the **Minnesota** release.

### **Note to Developers**:
> *Once you have edited and tested your changes to these source files you **MUST** regenerate the standard `pre-release` compose files using the `make build` command.*
>
> Any options added or removed to/from the `make gen` and `make run` commands must to also be added/removed to/from the new` tui-generator.sh` script
>
> **Note to Developers**: For **Minnesota** patch releases, once you have edited and tested your changes to the source compose
> files you **MUST** regenerate the committed **Minnesota** compose files using the `make build` command.
> Once the PR is merged the v3.0 vanity tag must be moved to the latest commit on the `minnesota` branch.
>
### Generating Custom Compose files

If one of the standard committed `minnesota` compose files doesn't meet your needs, you can generate and run a custom `minnesota`
compose file using the `make gen <options>` command. See [Gen](https://github.com/edgexfoundry/edgex-compose/blob/minnesota/compose-builder/README.md#gen)
and [Run](https://github.com/edgexfoundry/edgex-compose/blob/minnesota/compose-builder/README.md#run) target details below.
`Run` simply runs the custom compose file after generating it.

### Compose CLI Command

The Makefile in this folder expects the `docker compose` CLI command.
The old stand-alone `docker-compose` tool is no longer supported.
See https://docs.docker.com/compose/install/ for installation details for the latest `docker compose` CLI command.

### Generate next release compose files

Do the following to generate the compose files for next release such as `minnesota`

1. Create the new `release` branch from this branch, i.e create the `minnesota` branch (**Now done by DevOps release processes**)
2. Checkout a new working branch from the new `release` branch
3. Update the `REPOSITORY`, `CORE_EDGEX_REPOSITORY` and `APP_SVC_REPOSITORY` (**Now done by DevOps release processes**)
4. Update `versions` contained in the `.env` file appropriately for the new release
5. Run `make build`
6. Update the two READMEs to be specific to the new `release`
7. Commit changes, open PR and merge PR
8. TAG the new release branch (**Now done by DevOps release processes**)
9. Update EdgeX documentation to refer to the new release branch. (**Now done by DevOps release processes**)

### Generate dot release compose files

1. Checkout a new working branch from the target `release` branch for the dot release, i.e the `jakarta` branch
2. Update the and `versions` contained in the `.env` file appropriately for the dot release
3. Run `make build`
4. Commit changes, open PR and merge PR
5. TAG the release branch for the dot release (**Now done by DevOps release processes**)

### Multiple Compose files approach

The approach used with these source compose files is the `Extending using multiple Compose files` described here: https://docs.docker.com/compose/extends/#multiple-compose-files
Expand Down
4 changes: 2 additions & 2 deletions compose-builder/gen-header
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-no-secty-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-no-secty-with-app-sample-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-no-secty-with-app-sample.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-no-secty.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-with-app-sample-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose-with-app-sample.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down
6 changes: 3 additions & 3 deletions taf/docker-compose-taf-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down Expand Up @@ -964,7 +964,7 @@ services:
STAGEGATE_SECRETSTORESETUP_TOKENS_READYPORT: "54322"
STAGEGATE_WAITFOR_TIMEOUT: 60s
hostname: edgex-device-onvif-camera
image: edgexfoundry/device-onvif-camera-arm64:latest
image: edgexfoundry/device-onvif-camera-arm64:3.0.0
networks:
edgex-network: null
ports:
Expand Down
6 changes: 3 additions & 3 deletions taf/docker-compose-taf-mqtt-bus-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down Expand Up @@ -971,7 +971,7 @@ services:
STAGEGATE_SECRETSTORESETUP_TOKENS_READYPORT: "54322"
STAGEGATE_WAITFOR_TIMEOUT: 60s
hostname: edgex-device-onvif-camera
image: edgexfoundry/device-onvif-camera-arm64:latest
image: edgexfoundry/device-onvif-camera-arm64:3.0.0
networks:
edgex-network: null
ports:
Expand Down
6 changes: 3 additions & 3 deletions taf/docker-compose-taf-mqtt-bus.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# * Copyright 2022 Intel Corporation.
# * Copyright 2023 Intel Corporation.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
Expand All @@ -10,7 +10,7 @@
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * EdgeX Foundry, Kamakura release
# * EdgeX Foundry, Minnesota (3.0.x) release
# *******************************************************************************/
#
#
Expand Down Expand Up @@ -971,7 +971,7 @@ services:
STAGEGATE_SECRETSTORESETUP_TOKENS_READYPORT: "54322"
STAGEGATE_WAITFOR_TIMEOUT: 60s
hostname: edgex-device-onvif-camera
image: edgexfoundry/device-onvif-camera:latest
image: edgexfoundry/device-onvif-camera:3.0.0
networks:
edgex-network: null
ports:
Expand Down
Loading

0 comments on commit 60fe0b7

Please sign in to comment.