You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+32-13Lines changed: 32 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@
3
3
## Getting Started
4
4
This repository shows ways to use the [aws4embeddedlinux-ci](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci.git) library.
5
5
6
-
In order to use these examples, you must set up the [CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html), including
6
+
In order to use these examples, you must set up the [CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html), including
7
7
installing the CDK tool and bootstrapping the account you wish to deploy to. Additionally, you must have [Node](https://nodejs.org/en/) installed.
8
8
9
9
### Clone and Setup NPM Project
@@ -14,7 +14,7 @@ npm install .
14
14
npm run build
15
15
```
16
16
17
-
Note that while the CDK projects often do not require that you invoke the build command separately, doing so will ensure various assets
17
+
Note that while the CDK projects often do not require that you invoke the build command separately, doing so will ensure various assets
18
18
in the library are packaged correctly.
19
19
20
20
### Deploying
@@ -25,12 +25,21 @@ To deploy _all_ the pipeline examples, you can use the CDK deploy command:
25
25
cdk deploy --all
26
26
```
27
27
28
-
The pipelines can be found in the `Developer Tools > Code Pipeline > Pipelines` Console page. The newly created
29
-
pipeline `ubuntu_22_04BuildImagePipeline` should start automatically. If not, it will need to be run before other
28
+
Alternatively to deploy just a specific pipeline example, you can use the CDK deploy command:
29
+
30
+
EXAMPLE can be one or more of those: PokyPipeline, QemuEmbeddedLinuxPipeline, PokyAmiPipeline, KasPipeline, RenesasPipeline, NxpImxPipeline
31
+
32
+
```bash
33
+
cdk deploy <EXAMPLE>
34
+
```
35
+
36
+
The pipelines can be found in the `Developer Tools > Code Pipeline > Pipelines` Console page. The newly created
37
+
pipeline `ubuntu_22_04BuildImagePipeline` should start automatically. If not, it will need to be run before other
30
38
pipelines will work correctly. Once it is complete, the EmbeddedLinuxPipeline in the CodePipeline console page is ready to run.
31
39
32
40
### Removing Pipelines
33
41
The `cdk destroy` command can be used to remove individual pipelines and their related resources. This can also be done in the CloudFormation Console Page.
42
+
**Do not delete stacks while a CodePipeline is running, this can lead to unexpected failures!**
34
43
35
44
To remove all the resources associated with this application:
36
45
```bash
@@ -43,31 +52,37 @@ Several example pipelines are provided. Each one demonstrates a different aspect
43
52
### A Simple Poky Based Pipeline
44
53
This example will build the `core-image-minimal` image from Poky using the repo tool to manage layers. CVE checking is also enabled in the buildspec file.
45
54
46
-
The recommended place to view this is from the `Developer Tools > Code Pipeline > Pipelines` page. The pipeline will start with `PokyPipeline-`
47
-
followed by some unique identifier. From the pipeline page, you can find the CodeCommit source repository, the CodeBuild Project (with build logs),
55
+
The recommended place to view this is from the `Developer Tools > Code Pipeline > Pipelines` page. The pipeline will start with `PokyPipeline-`
56
+
followed by some unique identifier. From the pipeline page, you can find the CodeCommit source repository, the CodeBuild Project (with build logs),
48
57
and the S3 bucket that the image is uploaded to, at the end.
49
58
59
+
Example stack name: PokyPipeline
60
+
50
61
#### Using Kas
51
-
The Kas example shows how to use a [Kas Config](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci/blob/main/source-repo/kas/kas.yml) to manage
62
+
The Kas example shows how to use a [Kas Config](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci/blob/main/source-repo/kas/kas.yml) to manage
52
63
layers. This tool can help programatically manage layers and config with tighter Yocto integration than Git Submodules or the Repo tool.
53
64
54
65
See the AWS CodeBuild pipeline: KasPipeline-EmbeddedLinuxPipeline*
55
66
67
+
Example stack name: KasPipeline
68
+
56
69
#### A slightly modified version building a qemu pipeline:
57
-
This example builds a Qemu based image using [meta-aws-demos](https://github.com/aws4embeddedlinux/meta-aws-demos). The Qemu image can be run in
58
-
the CodeBuild environment. Using SLIRP networking, [OEQA testing](https://docs.yoctoproject.org/singleindex.html#performing-automated-runtime-testing)
70
+
This example builds a Qemu based image using [meta-aws-demos](https://github.com/aws4embeddedlinux/meta-aws-demos). The Qemu image can be run in
71
+
the CodeBuild environment. Using SLIRP networking, [OEQA testing](https://docs.yoctoproject.org/singleindex.html#performing-automated-runtime-testing)
59
72
such as ptest can be run in the pipeline.
60
73
61
74
See the AWS CodeBuild pipeline: QemuEmbeddedLinuxPipeline-EmbeddedLinuxPipeline*
62
75
63
76
### A Poky Based EC2 AMI Pipeline
64
-
Yocto can be used to create an EC2 AMI. This example builds an AMI based on Poky and meta-aws and exports it to your AMI registry using
77
+
Yocto can be used to create an EC2 AMI. This example builds an AMI based on Poky and meta-aws and exports it to your AMI registry using
65
78
the [VM Import/Export Service](https://docs.aws.amazon.com/vm-import/latest/userguide/what-is-vmimport.html).
66
79
67
80
The pipeline name starts with `PokyAmiPipeline-` in the CodePipeline page.
68
81
82
+
Example stack name: PokyAmiPipeline
83
+
69
84
### A NXP / IMX Pipeline
70
-
This example will build an image for
85
+
This example will build an image for
71
86
the [i.MX 6ULL EVK](https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/evaluation-kit-for-the-i-mx-6ull-and-6ulz-applications-processor:MCIMX6ULL-EVK) board.
72
87
73
88
Accepting the EULA is required. For this you need to uncomment the
@@ -78,9 +93,11 @@ Accepting the EULA is required. For this you need to uncomment the
78
93
79
94
The pipeline name starts with `NxpImxPipeline-` in the CodePipeline page.
80
95
96
+
Example stack name: NxpImxPipeline
97
+
81
98
### Using pre-built, proprietary artifacts in a Pipeline
82
99
83
-
This example is based on this [work](https://elinux.org/R-Car/Boards/Yocto-Gen3/v5.9.0) to build an image for Renesas R-Car-H3 Starter Kit
100
+
This example is based on this [work](https://elinux.org/R-Car/Boards/Yocto-Gen3/v5.9.0) to build an image for Renesas R-Car-H3 Starter Kit
84
101
Premier board (unofficial name - H3ULCB) including the proprietary graphics and multimedia drivers from Renesas.
85
102
86
103
Download the Multimedia and Graphics library and related Linux drivers from the following link (registration necessary):
@@ -95,12 +112,14 @@ Graphic drivers are required for Wayland. Multimedia drivers are optional.
95
112
96
113
#### Steps to build the image
97
114
98
-
1. Create a folder named `proprietary` in the root of the source repo, and put those two downloaded files into this folder.
115
+
1. Create a folder named `proprietary` in the root of the source repo, and put those two downloaded files into this folder.
99
116
1. Deploy the build pipeline and uncomment the `#TODO` in the build.sh file.
100
117
1. A build should automatically start. Once it succeeds you will get an image containing the proprietary graphics and multimedia drivers.
101
118
102
119
See the AWS CodeBuild pipeline: RenesasPipeline-EmbeddedLinuxPipeline*
0 commit comments