Skip to content

CodeCatalyst Custom Dev Environment Startup problem

0

I just started using CodeCatalyst and tried to setup a custom Dev Environment for it.

I have created a docker image from the Universal Image 2.0, removed php 7, installed php 5.6 (fedora/ius.io) with the required apache modules. On local testing that image works as expected.

I deployed that image to a public ECR repostitory (public.ecr.aws/q6u2b1h2/switched-on-systems) and using the following devfile.yaml (in my repository):

schemaVersion: 2.0.0 metadata: name: al2 components:

  • name: aws-runtime container: image: public.ecr.aws/q6u2b1h2/switched-on-systems:latest mountSources: true volumeMounts: - name: docker-store path: /var/lib/docker
  • name: docker-store volume: size: 16Gi commands:
  • id: configApache exec: component: aws-runtime commandLine: "sudo cp apache-project.conf /etc/httpd/conf.d/project.conf" workingDir: /projects/perrygolf.com
  • id: startApache exec: component: aws-runtime commandLine: "sudo apachectl start" workingDir: /projects/perrygolf.com events: postStart:
    • configApache
    • startApache

And starting a VisualCode dev environment it produces the following log, which besides what seems like a timeout issue does not seem to provide a clear reason for the failure:

2024-01-06 21:55:28 [INFO]: log level: info 2024-01-06 21:55:28 [INFO]: endpoints: retrieving AWS endpoints data 2024-01-06 21:55:28 [INFO]: OS: Linux x64 6.2.0-39-generic 2024-01-06 21:55:28 [INFO]: Visual Studio Code extension host: 1.71.1 2024-01-06 21:55:28 [INFO]: AWS Toolkit: 2.4.0 2024-01-06 21:55:28 [INFO]: node: 16.14.2 2024-01-06 21:55:28 [INFO]: electron: 19.0.12 2024-01-06 21:55:28 [INFO]: telemetry cache not found: '/home/roland/.config/Code/User/globalStorage/amazonwebservices.aws-toolkit-vscode/telemetryCache' 2024-01-06 21:55:28 [WARN]: AwsContext: no default region in credentials profile, falling back to us-east-1: 2024-01-06 21:55:29 [INFO]: using CodeCatalyst service configuration: default 2024-01-06 21:55:30 [WARN]: Metric Event did not pass validation: Metric toolkit_init was emitted without the result property. This property is always required. Consider using .run() instead of .emit(), which will set these properties automatically. See https://github.com/aws/aws-toolkit-vscode/blob/master/docs/telemetry.md#guidelines 2024-01-06 21:55:30 [INFO]: Command: (not started) [session-manager-plugin --version] 2024-01-06 21:55:30 [INFO]: Command: (not started) [/home/roland/.config/Code/User/globalStorage/amazonwebservices.aws-toolkit-vscode/tools/Amazon/sessionmanagerplugin/bin/session-manager-plugin --version] 2024-01-06 21:55:30 [INFO]: tryRun: ok: PID 222129: [ssh -G x] 2024-01-06 21:55:30 [INFO]: tryRun: ok: PID 222124: [/usr/share/code/bin/code --version] { exitCode: 0, stdout: '1.71.1\ne7f30e38c5a4efafeec8ad52861eb772a9ee4dfb\nx64', stderr: '', error: undefined, signal: undefined } 2024-01-06 21:55:31 [INFO]: Command: (not started) [ssh -G ....[Substitute illegal phrase]env-test] 2024-01-06 21:58:37 [ERROR]: API request failed (time: 604ms): startDevEnvironment params: { id: 'fe71add9-9e75-4cf1-9001-16b84f430c51', spaceName: 'Cloud-Acute', projectName: 'PerryGolf' } error: { message: 'Cannot start Dev Environment because create process is still going on', code: 'ConflictException', '[__type]': 'See error.__type for details.', time: 2024-01-06T21:58:37.499Z, statusCode: 409, retryable: false, retryDelay: 16.717627295322224 } headers: { 'x-amzn-requestid': '8ac0d4c2-9f50-48a0-b836-45238fb4f84d', 'x-amzn-trace-id': undefined, 'x-amzn-served-from': 'eu-west-1,eu-west-1', 'x-cache': 'Error from cloudfront', 'x-amz-cf-id': '9Fm6FR4O490NEAmmqGtnhTPVgG2hanG1kxhklUsrUhxnpr8WTybapA==', 'x-amz-cf-pop': 'LHR61-C2' } 2024-01-06 21:58:37 [INFO]: devenv not started (ConflictException), waiting (time: 186.482s): fe71add9-9e75-4cf1-… [STARTING/186004ms] 2024-01-06 21:58:43 [ERROR]: API request failed (time: 623ms): startDevEnvironment params: { id: 'fe71add9-9e75-4cf1-9001-16b84f430c51', spaceName: 'Cloud-Acute', projectName: 'PerryGolf' } error: { message: 'Cannot start Dev Environment because start process is still going on', code: 'ConflictException', '[__type]': 'See error.__type for details.', time: 2024-01-06T21:58:43.695Z, statusCode: 409, retryable: false, retryDelay: 4.186117617426355 } headers: { 'x-amzn-requestid': '1ad409f7-9f95-4772-a255-a0bfe09fe56d', 'x-amzn-trace-id': undefined, 'x-amzn-served-from': 'eu-west-1,eu-west-1', 'x-cache': 'Error from cloudfront', 'x-amz-cf-id': 'tXM3MD7BjeO-zs8uGrDI5yzUPQYhOTslPCNcwlLP60d6-23w4z2j7g==', 'x-amz-cf-pop': 'LHR61-C2' } 2024-01-06 21:58:43 [INFO]: devenv not started (ConflictException), waiting (time: 192.673s, startAttempts: 3): fe71add9-9e75-4cf1-… [STARTING/186004ms FAILED/3896ms STARTING/2295ms] 2024-01-06 21:58:54 [ERROR]: devenv failed to start (time: 203.755s, startAttempts: 7): fe71add9-9e75-4cf1-… [STARTING/186004ms FAILED/3896ms STARTING/2295ms FAILED/11083ms] 2024-01-06 21:58:54 [ERROR]: aws.codecatalyst.openDevEnv: Error: Dev Environment failed to start (FAILED): fe71add9-9e75-4cf1-… [FailedDevEnv] 2024-01-06 21:59:00 [WARN]: Metric Event did not pass validation: Metric toolkit_viewLogs was emitted without the result property. This property is always required. Consider using .run() instead of .emit(), which will set these properties automatically. See https://github.com/aws/aws-toolkit-vscode/blob/master/docs/telemetry.md#guidelines 2024-01-06 22:00:29 [INFO]: telemetry: sent batch (size=8)

This dev environment is not in a VPC and creating a dev environment for Cloud9 fails equally ... even so without the log.

Any help would be appreciated.

Regards, Roland

asked 3 years ago288 views

1 Answer
0

To troubleshoot and resolve the issue with starting your custom development environment using CodeCatalyst:

Verify Environment Status: Check the status of your dev environment to ensure there are no ongoing processes conflicting with its startup.

Review IAM Permissions: Ensure the IAM role or user credentials used have adequate permissions to create and manage necessary AWS resources.

Check Devfile Configuration: Double-check the devfile.yaml configuration for correct Docker image setup, PHP 5.6 installation, Apache configuration, and command paths.

Network Setup: Ensure there are no network restrictions or security group issues preventing the environment from starting or accessing resources.

Resource Limits: Verify if there are any EC2 instance limits or other resource quotas that might affect environment creation.

Logging and Monitoring: Use AWS CloudWatch logs or other logging tools to capture detailed logs during the environment creation process for troubleshooting.

Contact AWS Support: If issues persist, consider reaching out to AWS support with detailed logs and configuration specifics for assistance.

By addressing these areas systematically, you can diagnose and resolve the issues preventing your CodeCatalyst custom development environment from starting successfully.

EXPERT

answered 2 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.