Status: SUCCEEDED
Triggered by: -
Duration: 28 minutes
Actions:

Definition (rev 58aa5b5aa51b86b4526dd8cca55bbc0cc337bee6)

buildbucket: <
  server: "cr-buildbucket.appspot.com"
  bucket: "luci.boringssl.ci"
  builder: "linux32_sde"
>

Incoming triggers

Incoming properties

{
  "branch": "refs/heads/master",
  "repository": "https://boringssl.googlesource.com/boringssl",
  "revision": "b9fbf4069eca35bf58d760f7f904814820f6c111"
}

Incoming tags

  • buildset:commit/git/b9fbf4069eca35bf58d760f7f904814820f6c111
  • buildset:commit/gitiles/boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111
  • gitiles_ref:refs/heads/master

Debug log (UTC)

[18:21:12.779] New invocation is queued and will start shortly
[18:21:19.598] Starting the invocation (attempt 1)
[18:21:19.638] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[18:21:19.638] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[18:21:19.638] Buildbucket request:
{
  "bucket": "luci.boringssl.ci",
  "client_operation_id": "9040931061182125264",
  "parameters_json": "{\"builder_name\":\"linux32_sde\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://boringssl.googlesource.com/boringssl\",\"revision\":\"b9fbf4069eca35bf58d760f7f904814820f6c111\"},\"id\":\"https://boringssl.googlesource.com/boringssl/+/refs/heads/master@b9fbf4069eca35bf58d760f7f904814820f6c111\",\"title\":\"b9fbf4069eca35bf58d760f7f904814820f6c111\",\"url\":\"https://boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://boringssl.googlesource.com/boringssl\",\"revision\":\"b9fbf4069eca35bf58d760f7f904814820f6c111\"}}",
  "pubsub_callback": {
    "auth_token": "...",
    "topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
  },
  "tags": [
    "builder:linux32_sde",
    "scheduler_invocation_id:9040931061182125264",
    "scheduler_job_id:boringssl/linux32_sde",
    "user_agent:luci-scheduler",
    "buildset:commit/git/b9fbf4069eca35bf58d760f7f904814820f6c111",
    "buildset:commit/gitiles/boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111",
    "gitiles_ref:refs/heads/master"
  ]
}
[18:21:21.186] Buildbucket response:
{
  "build": {
    "bucket": "luci.boringssl.ci",
    "canary_preference": "PROD",
    "created_by": "project:boringssl",
    "created_ts": "1594059679765733",
    "id": "8875500993189249104",
    "parameters_json": "{\"builder_name\": \"linux32_sde\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}, \"id\": \"https://boringssl.googlesource.com/boringssl/+/refs/heads/master@b9fbf4069eca35bf58d760f7f904814820f6c111\", \"title\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\", \"url\": \"https://boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}}",
    "project": "boringssl",
    "result_details_json": "{\"properties\": {}}",
    "service_account": "boringssl-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
    "status": "SCHEDULED",
    "status_changed_ts": "1594059680688590",
    "tags": [
      "builder:linux32_sde",
      "buildset:commit/git/b9fbf4069eca35bf58d760f7f904814820f6c111",
      "buildset:commit/gitiles/boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9040931061182125264",
      "scheduler_job_id:boringssl/linux32_sde",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/boringssl/buildbucket/cr-buildbucket.appspot.com/8875500993189249104/+/annotations",
      "swarming_tag:luci_project:boringssl",
      "swarming_tag:recipe_name:boringssl",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1594059680688841",
    "url": "https://ci.chromium.org/b/8875500993189249104",
    "utcnow_ts": "1594059681144441"
  }
}
[18:21:21.186] Task URL: https://ci.chromium.org/b/8875500993189249104
[18:21:21.187] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:2:0) after 1m0s
[18:22:21.202] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:2:0)
[18:22:21.202] Timer tick, asking Buildbucket for the build status
[18:22:21.562] Build 8875500993189249104: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[18:22:21.562] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:3:0) after 1m0s
[18:23:21.568] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:3:0)
[18:23:21.568] Timer tick, asking Buildbucket for the build status
[18:23:21.918] Build 8875500993189249104: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[18:23:21.918] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:4:0) after 1m0s
[18:24:21.975] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:4:0)
[18:24:21.975] Timer tick, asking Buildbucket for the build status
[18:24:22.175] Build 8875500993189249104: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[18:24:22.175] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:5:0) after 1m0s
[18:25:22.176] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:5:0)
[18:25:22.177] Timer tick, asking Buildbucket for the build status
[18:25:22.366] Build 8875500993189249104: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[18:25:22.366] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:6:0) after 1m0s
[18:26:11.086] Received PubSub notification, asking Buildbucket for the build status
[18:26:11.266] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:26:22.395] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:6:0)
[18:26:22.395] Timer tick, asking Buildbucket for the build status
[18:26:22.592] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:26:22.592] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:8:0) after 1m0s
[18:27:22.636] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:8:0)
[18:27:22.636] Timer tick, asking Buildbucket for the build status
[18:27:23.044] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:27:23.044] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:9:0) after 1m0s
[18:28:23.054] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:9:0)
[18:28:23.054] Timer tick, asking Buildbucket for the build status
[18:28:23.313] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:28:23.313] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:10:0) after 1m0s
[18:29:23.318] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:10:0)
[18:29:23.318] Timer tick, asking Buildbucket for the build status
[18:29:23.680] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:29:23.680] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:11:0) after 1m0s
[18:30:23.828] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:11:0)
[18:30:23.828] Timer tick, asking Buildbucket for the build status
[18:30:24.636] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:30:24.636] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:12:0) after 1m0s
[18:31:24.682] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:12:0)
[18:31:24.682] Timer tick, asking Buildbucket for the build status
[18:31:24.888] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:31:24.888] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:13:0) after 1m0s
[18:32:24.951] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:13:0)
[18:32:24.951] Timer tick, asking Buildbucket for the build status
[18:32:25.087] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:32:25.087] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:14:0) after 1m0s
[18:33:25.109] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:14:0)
[18:33:25.109] Timer tick, asking Buildbucket for the build status
[18:33:25.270] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:33:25.270] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:15:0) after 1m0s
[18:34:25.402] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:15:0)
[18:34:25.402] Timer tick, asking Buildbucket for the build status
[18:34:25.569] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:34:25.569] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:16:0) after 1m0s
[18:35:25.754] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:16:0)
[18:35:25.754] Timer tick, asking Buildbucket for the build status
[18:35:26.324] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:35:26.324] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:17:0) after 1m0s
[18:36:26.372] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:17:0)
[18:36:26.372] Timer tick, asking Buildbucket for the build status
[18:36:26.471] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:36:26.471] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:18:0) after 1m0s
[18:37:26.510] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:18:0)
[18:37:26.510] Timer tick, asking Buildbucket for the build status
[18:37:26.660] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:37:26.660] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:19:0) after 1m0s
[18:38:26.829] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:19:0)
[18:38:26.829] Timer tick, asking Buildbucket for the build status
[18:38:27.414] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:38:27.414] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:20:0) after 1m0s
[18:39:27.503] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:20:0)
[18:39:27.503] Timer tick, asking Buildbucket for the build status
[18:39:27.768] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:39:27.768] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:21:0) after 1m0s
[18:40:27.770] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:21:0)
[18:40:27.770] Timer tick, asking Buildbucket for the build status
[18:40:27.915] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:40:27.915] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:22:0) after 1m0s
[18:41:27.985] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:22:0)
[18:41:27.985] Timer tick, asking Buildbucket for the build status
[18:41:28.216] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:41:28.216] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:23:0) after 1m0s
[18:42:28.227] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:23:0)
[18:42:28.227] Timer tick, asking Buildbucket for the build status
[18:42:28.778] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:42:28.778] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:24:0) after 1m0s
[18:43:28.818] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:24:0)
[18:43:28.818] Timer tick, asking Buildbucket for the build status
[18:43:29.219] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:43:29.219] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:25:0) after 1m0s
[18:44:29.297] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:25:0)
[18:44:29.297] Timer tick, asking Buildbucket for the build status
[18:44:29.482] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:44:29.482] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:26:0) after 1m0s
[18:45:29.556] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:26:0)
[18:45:29.556] Timer tick, asking Buildbucket for the build status
[18:45:29.718] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:45:29.718] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:27:0) after 1m0s
[18:46:29.743] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:27:0)
[18:46:29.743] Timer tick, asking Buildbucket for the build status
[18:46:30.493] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:46:30.494] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:28:0) after 1m0s
[18:47:30.512] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:28:0)
[18:47:30.512] Timer tick, asking Buildbucket for the build status
[18:47:30.619] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:47:30.619] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:29:0) after 1m0s
[18:48:30.674] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:29:0)
[18:48:30.674] Timer tick, asking Buildbucket for the build status
[18:48:30.971] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:48:30.971] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:30:0) after 1m0s
[18:49:30.987] Handling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:30:0)
[18:49:30.987] Timer tick, asking Buildbucket for the build status
[18:49:31.186] Build 8875500993189249104: status "STARTED", result "", failure_reason "", cancelation_reason ""
[18:49:31.186] Scheduling timer "check-buildbucket-build-status" (boringssl/linux32_sde:9040931061182125264:31:0) after 1m0s
[18:49:53.402] Received PubSub notification, asking Buildbucket for the build status
[18:49:53.595] Build 8875500993189249104: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[18:49:53.595] Buildbucket build:
{
  "build": {
    "bucket": "luci.boringssl.ci",
    "canary_preference": "PROD",
    "completed_ts": "1594061392426595",
    "created_by": "project:boringssl",
    "created_ts": "1594059679765733",
    "id": "8875500993189249104",
    "parameters_json": "{\"builder_name\": \"linux32_sde\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}, \"id\": \"https://boringssl.googlesource.com/boringssl/+/refs/heads/master@b9fbf4069eca35bf58d760f7f904814820f6c111\", \"title\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\", \"url\": \"https://boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}}",
    "project": "boringssl",
    "result": "SUCCESS",
    "result_details_json": "{\"properties\": {\"$gatekeeper\": {\"group\": \"client.boringssl\"}, \"$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://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}, \"id\": \"https://boringssl.googlesource.com/boringssl/+/refs/heads/master@b9fbf4069eca35bf58d760f7f904814820f6c111\", \"title\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\", \"url\": \"https://boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111\"}]}, \"bot_id\": \"luci-flex-ci-xenial-3-imeb\", \"branch\": \"refs/heads/master\", \"buildername\": \"linux32_sde\", \"got_revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\", \"path_config\": \"generic\", \"recipe\": \"boringssl\", \"repository\": \"https://boringssl.googlesource.com/boringssl\", \"revision\": \"b9fbf4069eca35bf58d760f7f904814820f6c111\"}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_e0c0963c08c3d1b26b4f237fcfd17b3c9492fb5a1f9625c008dc75e35d1233ce_v2\", \"git\", \"goma_v2\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Broadwell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gcp\": [\"google.com:chromecompute\"], \"gpu\": [\"none\"], \"id\": [\"luci-flex-ci-xenial-3-imeb\"], \"image\": [\"chrome-xenial-20052400-59eb8623c93\"], \"inside_docker\": [\"0\"], \"kvm\": [\"1\"], \"locale\": [\"en_US.UTF-8\"], \"machine_type\": [\"n1-standard-8\"], \"os\": [\"Linux\", \"Ubuntu\", \"Ubuntu-16.04\"], \"pool\": [\"luci.flex.ci\"], \"python\": [\"2.7.12\"], \"server_version\": [\"5320-752003c\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-west\", \"us-west1\", \"us-west1-b\"]}}}",
    "service_account": "boringssl-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
    "started_ts": "1594059965070827",
    "status": "COMPLETED",
    "status_changed_ts": "1594061392948832",
    "tags": [
      "builder:linux32_sde",
      "buildset:commit/git/b9fbf4069eca35bf58d760f7f904814820f6c111",
      "buildset:commit/gitiles/boringssl.googlesource.com/boringssl/+/b9fbf4069eca35bf58d760f7f904814820f6c111",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9040931061182125264",
      "scheduler_job_id:boringssl/linux32_sde",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/boringssl/buildbucket/cr-buildbucket.appspot.com/8875500993189249104/+/annotations",
      "swarming_tag:luci_project:boringssl",
      "swarming_tag:os:Linux",
      "swarming_tag:recipe_name:boringssl",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:4d3e2df7119d2110",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1594061392982100",
    "url": "https://ci.chromium.org/b/8875500993189249104",
    "utcnow_ts": "1594061393554607"
  }
}
[18:49:53.595] Invocation finished in 28m40.836056381s with status SUCCEEDED