[09:41:48.314] New invocation is queued and will start shortly
[09:41:49.830] Starting the invocation (attempt 1)
[09:41:49.870] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[09:41:49.871] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[09:41:49.871] Buildbucket request:
{
"bucket": "luci.webrtc.ci",
"client_operation_id": "9070135962672612800",
"parameters_json": "{\"builder_name\":\"Linux Asan\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://webrtc.googlesource.com/src\",\"revision\":\"637f110667c4dec01eb17233f57054d20a308ae5\"},\"id\":\"https://webrtc.googlesource.com/src/+/refs/heads/master@637f110667c4dec01eb17233f57054d20a308ae5\",\"title\":\"637f110667c4dec01eb17233f57054d20a308ae5\",\"url\":\"https://webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://webrtc.googlesource.com/src\",\"revision\":\"637f110667c4dec01eb17233f57054d20a308ae5\"}}",
"pubsub_callback": {
"auth_token": "...",
"topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
},
"tags": [
"builder:Linux Asan",
"scheduler_invocation_id:9070135962672612800",
"scheduler_job_id:webrtc/Linux Asan",
"user_agent:luci-scheduler",
"buildset:commit/git/637f110667c4dec01eb17233f57054d20a308ae5",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5",
"gitiles_ref:refs/heads/master"
]
}
[09:41:50.688] Buildbucket response:
{
"build": {
"bucket": "luci.webrtc.ci",
"canary_preference": "PROD",
"created_by": "project:webrtc",
"created_ts": "1566207709993075",
"id": "8904705900244597936",
"parameters_json": "{\"builder_name\": \"Linux Asan\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@637f110667c4dec01eb17233f57054d20a308ae5\", \"title\": \"637f110667c4dec01eb17233f57054d20a308ae5\", \"url\": \"https://webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\"}}",
"project": "webrtc",
"result_details_json": "{\"properties\": {}}",
"service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"status": "SCHEDULED",
"status_changed_ts": "1566207710540776",
"tags": [
"build_address:luci.webrtc.ci/Linux Asan/21420",
"builder:Linux Asan",
"buildset:commit/git/637f110667c4dec01eb17233f57054d20a308ae5",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9070135962672612800",
"scheduler_job_id:webrtc/Linux Asan",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8904705900244597936/+/annotations",
"swarming_tag:luci_project:webrtc",
"swarming_tag:recipe_name:webrtc/standalone",
"swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
"swarming_task_id:",
"user_agent:luci-scheduler"
],
"updated_ts": "1566207710540893",
"url": "https://ci.chromium.org/b/8904705900244597936",
"utcnow_ts": "1566207710674872"
}
}
[09:41:50.688] Task URL: https://ci.chromium.org/b/8904705900244597936
[09:41:50.688] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:2:0) after 1m0s
[09:42:50.742] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:2:0)
[09:42:50.742] Timer tick, asking Buildbucket for the build status
[09:42:51.228] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:42:51.228] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:3:0) after 1m0s
[09:43:51.292] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:3:0)
[09:43:51.292] Timer tick, asking Buildbucket for the build status
[09:43:51.660] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:43:51.660] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:4:0) after 1m0s
[09:44:51.689] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:4:0)
[09:44:51.689] Timer tick, asking Buildbucket for the build status
[09:44:52.222] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:44:52.223] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:5:0) after 1m0s
[09:45:52.270] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:5:0)
[09:45:52.270] Timer tick, asking Buildbucket for the build status
[09:45:52.596] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:45:52.596] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:6:0) after 1m0s
[09:46:52.627] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:6:0)
[09:46:52.627] Timer tick, asking Buildbucket for the build status
[09:46:52.788] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:46:52.788] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:7:0) after 1m0s
[09:47:52.806] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:7:0)
[09:47:52.806] Timer tick, asking Buildbucket for the build status
[09:47:52.916] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:47:52.916] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:8:0) after 1m0s
[09:48:52.903] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:8:0)
[09:48:52.903] Timer tick, asking Buildbucket for the build status
[09:48:53.398] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:48:53.398] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:9:0) after 1m0s
[09:49:53.407] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:9:0)
[09:49:53.407] Timer tick, asking Buildbucket for the build status
[09:49:54.722] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:49:54.722] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:10:0) after 1m0s
[09:50:54.773] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:10:0)
[09:50:54.773] Timer tick, asking Buildbucket for the build status
[09:50:54.995] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:50:54.995] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:11:0) after 1m0s
[09:51:54.999] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:11:0)
[09:51:54.999] Timer tick, asking Buildbucket for the build status
[09:51:55.679] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:51:55.679] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:12:0) after 1m0s
[09:52:55.766] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:12:0)
[09:52:55.766] Timer tick, asking Buildbucket for the build status
[09:52:55.851] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:52:55.851] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:13:0) after 1m0s
[09:53:55.883] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:13:0)
[09:53:55.883] Timer tick, asking Buildbucket for the build status
[09:53:56.019] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:53:56.019] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:14:0) after 1m0s
[09:54:56.046] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:14:0)
[09:54:56.047] Timer tick, asking Buildbucket for the build status
[09:54:56.121] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:54:56.121] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:15:0) after 1m0s
[09:55:56.142] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:15:0)
[09:55:56.142] Timer tick, asking Buildbucket for the build status
[09:55:56.209] Build 8904705900244597936: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:55:56.209] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:16:0) after 1m0s
[09:56:20.446] Received PubSub notification, asking Buildbucket for the build status
[09:56:20.771] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:56:56.626] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:16:0)
[09:56:56.626] Timer tick, asking Buildbucket for the build status
[09:56:57.189] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:56:57.189] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:18:0) after 1m0s
[09:57:57.555] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:18:0)
[09:57:57.555] Timer tick, asking Buildbucket for the build status
[09:57:57.651] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:57:57.651] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:19:0) after 1m0s
[09:58:57.894] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:19:0)
[09:58:57.894] Timer tick, asking Buildbucket for the build status
[09:58:58.270] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:58:58.270] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:20:0) after 1m0s
[09:59:58.506] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:20:0)
[09:59:58.506] Timer tick, asking Buildbucket for the build status
[09:59:58.812] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:59:58.812] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:21:0) after 1m0s
[10:00:58.810] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:21:0)
[10:00:58.810] Timer tick, asking Buildbucket for the build status
[10:00:58.949] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:00:58.949] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:22:0) after 1m0s
[10:01:58.932] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:22:0)
[10:01:58.932] Timer tick, asking Buildbucket for the build status
[10:01:59.222] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:01:59.222] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:23:0) after 1m0s
[10:02:59.359] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:23:0)
[10:02:59.359] Timer tick, asking Buildbucket for the build status
[10:03:01.083] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:03:01.084] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:24:0) after 1m0s
[10:04:01.316] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:24:0)
[10:04:01.316] Timer tick, asking Buildbucket for the build status
[10:04:01.735] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:04:01.735] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:25:0) after 1m0s
[10:05:01.906] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:25:0)
[10:05:01.906] Timer tick, asking Buildbucket for the build status
[10:05:02.095] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:05:02.095] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:26:0) after 1m0s
[10:06:02.158] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:26:0)
[10:06:02.158] Timer tick, asking Buildbucket for the build status
[10:06:02.379] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:06:02.379] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:27:0) after 1m0s
[10:07:02.503] Handling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:27:0)
[10:07:02.503] Timer tick, asking Buildbucket for the build status
[10:07:03.259] Build 8904705900244597936: status "STARTED", result "", failure_reason "", cancelation_reason ""
[10:07:03.259] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux Asan:9070135962672612800:28:0) after 1m0s
[10:07:43.492] Received PubSub notification, asking Buildbucket for the build status
[10:07:43.759] Build 8904705900244597936: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[10:07:43.759] Buildbucket build:
{
"build": {
"bucket": "luci.webrtc.ci",
"canary_preference": "PROD",
"completed_ts": "1566209260303527",
"created_by": "project:webrtc",
"created_ts": "1566207709993075",
"id": "8904705900244597936",
"parameters_json": "{\"builder_name\": \"Linux Asan\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@637f110667c4dec01eb17233f57054d20a308ae5\", \"title\": \"637f110667c4dec01eb17233f57054d20a308ae5\", \"url\": \"https://webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\"}}",
"project": "webrtc",
"result": "SUCCESS",
"result_details_json": "{\"properties\": {\"$recipe_engine/path\": {\"cache_dir\": \"/b/s/w/ir/cache\", \"temp_dir\": \"/b/s/w/ir/tmp/rt\"}, \"$recipe_engine/runtime\": {\"is_experimental\": false, \"is_luci\": true}, \"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@637f110667c4dec01eb17233f57054d20a308ae5\", \"title\": \"637f110667c4dec01eb17233f57054d20a308ae5\", \"url\": \"https://webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5\"}]}, \"bot_id\": \"luci-webrtc-ci-xenial-10-zudn\", \"branch\": \"refs/heads/master\", \"buildername\": \"Linux Asan\", \"buildnumber\": 21420, \"got_clang_revision\": \"365097-f7e52fbd-8\", \"got_revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\", \"got_revision_cp\": \"refs/heads/master@{#28888}\", \"isolate_server\": \"https://isolateserver.appspot.com\", \"mastername\": \"client.webrtc\", \"path_config\": \"generic\", \"recipe\": \"webrtc/standalone\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"637f110667c4dec01eb17233f57054d20a308ae5\", \"swarm_hashes\": {\"audio_decoder_unittests\": \"f49ec267aa5c2eff2f17420e57708d6e2c6da00f\", \"common_audio_unittests\": \"239f75f301192109883b7372492baccfcb6b8c2c\", \"common_video_unittests\": \"c0f9ebdd1e7a09dbad541b580ae2a97e0061e24a\", \"low_bandwidth_audio_test\": \"33119011ba0833fb1bece1cb23cd3f66a40b7b21\", \"modules_tests\": \"d114212d9c2d5e4512fc575b6137bed11aaaeb78\", \"modules_unittests\": \"b665394f0bcf87420eb1c9a2451b100ed380efd7\", \"peerconnection_unittests\": \"60cad0cc3eaba8c8e597aa8f420424a768848907\", \"rtc_media_unittests\": \"6eb1b8f077e3428fd7f1e4a901346cfed031d2b1\", \"rtc_pc_unittests\": \"7cde559a3df90c9a1c0debc29081fce942b8fc74\", \"rtc_stats_unittests\": \"45993c1ff8e05097ed12a45387e1cf132efd4cf7\", \"rtc_unittests\": \"17b400c00f4bcb06c647c6c7684ddcf5b5b9deed\", \"slow_tests\": \"01c9d36dfd994555106a4eac8d3a502e2b71b233\", \"system_wrappers_unittests\": \"0e61db03f48ccf8b787ac8c6daff3081aada98a8\", \"test_support_unittests\": \"738c6d52cdc5526667f91b3ad5be9ee0fd3e2a1c\", \"tools_unittests\": \"8c53cd2dea2722cfa203a4749d1a6f0487d1bf18\", \"video_engine_tests\": \"7349ba93800a68d847048ca272cda136c1f5a471\", \"webrtc_nonparallel_tests\": \"8940ce8f1a9f0085efe315b60244973ff659a2fd\"}}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_44678c1ef4c7d705bd7e592df97e9c1573c4ed9129da6654b149d3b42d045362_v2\", \"builder_55aa4c084be5ed9d3954314e1098bc0d32b90f37d826af3d055ec49a08faf339_v2\", \"builder_a9e857c6f45aeca8cc1388c7c30c9ddfcf1f8acd0c8e85588eec9b6e05b9c136_v2\", \"builder_b6e955e353d7ad729db4d58448beff3ae66bc2502b03a8d5aa67f12ea70e7a83_v2\", \"builder_e13c935ebc65dc2cf0fcf9090194dc3ad0db6dbd49380f1c9a432e16039a2bfe_v2\", \"git\", \"goma_v2\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Broadwell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gpu\": [\"none\"], \"id\": [\"luci-webrtc-ci-xenial-10-zudn\"], \"image\": [\"chrome-xenial-19052201-9cb74617499\"], \"inside_docker\": [\"0\"], \"kvm\": [\"1\"], \"locale\": [\"en_US.UTF-8\"], \"machine_type\": [\"n1-standard-8\"], \"os\": [\"Linux\", \"Ubuntu\", \"Ubuntu-16.04\"], \"pool\": [\"luci.webrtc.ci\"], \"python\": [\"2.7.12\"], \"server_version\": [\"4397-8786906\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-central\", \"us-central1\", \"us-central1-b\"]}}}",
"service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"started_ts": "1566208572794283",
"status": "COMPLETED",
"status_changed_ts": "1566209261881028",
"tags": [
"build_address:luci.webrtc.ci/Linux Asan/21420",
"builder:Linux Asan",
"buildset:commit/git/637f110667c4dec01eb17233f57054d20a308ae5",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/637f110667c4dec01eb17233f57054d20a308ae5",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9070135962672612800",
"scheduler_job_id:webrtc/Linux Asan",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8904705900244597936/+/annotations",
"swarming_tag:luci_project:webrtc",
"swarming_tag:os:Linux",
"swarming_tag:recipe_name:webrtc/standalone",
"swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
"swarming_task_id:46c2129f39309d10",
"user_agent:luci-scheduler"
],
"updated_ts": "1566209262131573",
"url": "https://ci.chromium.org/b/8904705900244597936",
"utcnow_ts": "1566209263742115"
}
}
[10:07:43.759] Invocation finished in 25m55.465643076s with status SUCCEEDED