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

Definition (rev 840fc1d7a17d9f663eedc70c67b8fdf31f8eb475)

buildbucket: <
  server: "cr-buildbucket.appspot.com"
  bucket: "luci.dart.ci.sandbox"
  builder: "pkg-linux-debug"
>

Incoming triggers

Incoming properties

{
  "branch": "refs/heads/master",
  "repository": "https://dart.googlesource.com/sdk",
  "revision": "576ef913e44d3cc92eeede09b402a69015c1e56a"
}

Incoming tags

  • buildset:commit/git/576ef913e44d3cc92eeede09b402a69015c1e56a
  • buildset:commit/gitiles/dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a
  • gitiles_ref:refs/heads/master

Debug log (UTC)

[22:10:08.762] New invocation is queued and will start shortly
[22:10:10.084] Starting the invocation (attempt 1)
[22:10:10.173] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[22:10:10.173] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[22:10:10.173] Buildbucket request:
{
  "bucket": "luci.dart.ci.sandbox",
  "client_operation_id": "9070723059901603184",
  "parameters_json": "{\"builder_name\":\"pkg-linux-debug\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://dart.googlesource.com/sdk\",\"revision\":\"06509e333deb74572f002a32af17043795b0988c\"},\"id\":\"https://dart.googlesource.com/sdk/+/refs/heads/master@06509e333deb74572f002a32af17043795b0988c\",\"title\":\"06509e333deb74572f002a32af17043795b0988c\",\"url\":\"https://dart.googlesource.com/sdk/+/06509e333deb74572f002a32af17043795b0988c\"},{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://dart.googlesource.com/sdk\",\"revision\":\"576ef913e44d3cc92eeede09b402a69015c1e56a\"},\"id\":\"https://dart.googlesource.com/sdk/+/refs/heads/master@576ef913e44d3cc92eeede09b402a69015c1e56a\",\"title\":\"576ef913e44d3cc92eeede09b402a69015c1e56a\",\"url\":\"https://dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://dart.googlesource.com/sdk\",\"revision\":\"576ef913e44d3cc92eeede09b402a69015c1e56a\"}}",
  "pubsub_callback": {
    "auth_token": "...",
    "topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
  },
  "tags": [
    "builder:pkg-linux-debug",
    "scheduler_invocation_id:9070723059901603184",
    "scheduler_job_id:dart/pkg-linux-debug",
    "user_agent:luci-scheduler",
    "buildset:commit/git/576ef913e44d3cc92eeede09b402a69015c1e56a",
    "buildset:commit/gitiles/dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a",
    "gitiles_ref:refs/heads/master"
  ]
}
[22:10:11.069] Buildbucket response:
{
  "build": {
    "bucket": "luci.dart.ci.sandbox",
    "canary": true,
    "canary_preference": "CANARY",
    "created_by": "project:dart",
    "created_ts": "1565647810427706",
    "id": "8905292997492075584",
    "parameters_json": "{\"builder_name\": \"pkg-linux-debug\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"06509e333deb74572f002a32af17043795b0988c\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@06509e333deb74572f002a32af17043795b0988c\", \"title\": \"06509e333deb74572f002a32af17043795b0988c\", \"url\": \"https://dart.googlesource.com/sdk/+/06509e333deb74572f002a32af17043795b0988c\"}, {\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@576ef913e44d3cc92eeede09b402a69015c1e56a\", \"title\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\", \"url\": \"https://dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}}",
    "project": "dart",
    "result_details_json": "{\"properties\": {}}",
    "service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
    "status": "SCHEDULED",
    "status_changed_ts": "1565647810846099",
    "tags": [
      "build_address:luci.dart.ci.sandbox/pkg-linux-debug/2666",
      "builder:pkg-linux-debug",
      "buildset:commit/git/576ef913e44d3cc92eeede09b402a69015c1e56a",
      "buildset:commit/gitiles/dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9070723059901603184",
      "scheduler_job_id:dart/pkg-linux-debug",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8905292997492075584/+/annotations",
      "swarming_tag:luci_project:dart",
      "swarming_tag:recipe_name:dart/neo",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1565647810846209",
    "url": "https://ci.chromium.org/b/8905292997492075584",
    "utcnow_ts": "1565647811046575"
  }
}
[22:10:11.069] Task URL: https://ci.chromium.org/b/8905292997492075584
[22:10:11.069] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:2:0) after 1m0s
[22:11:11.062] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:2:0)
[22:11:11.062] Timer tick, asking Buildbucket for the build status
[22:11:11.244] Build 8905292997492075584: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[22:11:11.244] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:3:0) after 1m0s
[22:12:11.318] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:3:0)
[22:12:11.318] Timer tick, asking Buildbucket for the build status
[22:12:11.600] Build 8905292997492075584: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[22:12:11.600] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:4:0) after 1m0s
[22:13:11.664] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:4:0)
[22:13:11.664] Timer tick, asking Buildbucket for the build status
[22:13:11.838] Build 8905292997492075584: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[22:13:11.838] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:5:0) after 1m0s
[22:14:11.861] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:5:0)
[22:14:11.861] Timer tick, asking Buildbucket for the build status
[22:14:12.104] Build 8905292997492075584: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[22:14:12.104] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:6:0) after 1m0s
[22:15:12.242] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:6:0)
[22:15:12.242] Timer tick, asking Buildbucket for the build status
[22:15:12.631] Build 8905292997492075584: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[22:15:12.631] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:7:0) after 1m0s
[22:15:16.069] Received PubSub notification, asking Buildbucket for the build status
[22:15:16.416] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:16:12.715] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:7:0)
[22:16:12.715] Timer tick, asking Buildbucket for the build status
[22:16:12.862] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:16:12.862] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:9:0) after 1m0s
[22:17:12.864] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:9:0)
[22:17:12.864] Timer tick, asking Buildbucket for the build status
[22:17:12.979] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:17:12.979] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:10:0) after 1m0s
[22:18:13.075] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:10:0)
[22:18:13.075] Timer tick, asking Buildbucket for the build status
[22:18:13.327] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:18:13.327] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:11:0) after 1m0s
[22:19:13.394] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:11:0)
[22:19:13.394] Timer tick, asking Buildbucket for the build status
[22:19:13.710] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:19:13.711] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:12:0) after 1m0s
[22:20:13.733] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:12:0)
[22:20:13.733] Timer tick, asking Buildbucket for the build status
[22:20:13.904] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:20:13.904] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:13:0) after 1m0s
[22:21:14.203] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:13:0)
[22:21:14.203] Timer tick, asking Buildbucket for the build status
[22:21:14.337] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:21:14.337] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:14:0) after 1m0s
[22:22:14.541] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:14:0)
[22:22:14.541] Timer tick, asking Buildbucket for the build status
[22:22:14.682] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:22:14.682] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:15:0) after 1m0s
[22:23:14.761] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:15:0)
[22:23:14.761] Timer tick, asking Buildbucket for the build status
[22:23:15.019] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:23:15.019] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:16:0) after 1m0s
[22:24:15.120] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:16:0)
[22:24:15.120] Timer tick, asking Buildbucket for the build status
[22:24:15.310] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:24:15.310] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:17:0) after 1m0s
[22:25:15.318] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:17:0)
[22:25:15.318] Timer tick, asking Buildbucket for the build status
[22:25:15.615] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:25:15.615] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:18:0) after 1m0s
[22:26:15.744] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:18:0)
[22:26:15.744] Timer tick, asking Buildbucket for the build status
[22:26:16.140] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:26:16.140] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:19:0) after 1m0s
[22:27:16.195] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:19:0)
[22:27:16.195] Timer tick, asking Buildbucket for the build status
[22:27:16.442] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:27:16.442] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:20:0) after 1m0s
[22:28:16.471] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:20:0)
[22:28:16.471] Timer tick, asking Buildbucket for the build status
[22:28:16.628] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:28:16.628] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:21:0) after 1m0s
[22:29:16.772] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:21:0)
[22:29:16.772] Timer tick, asking Buildbucket for the build status
[22:29:19.248] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:29:19.248] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:22:0) after 1m0s
[22:30:19.391] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:22:0)
[22:30:19.391] Timer tick, asking Buildbucket for the build status
[22:30:19.918] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:30:19.918] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:23:0) after 1m0s
[22:31:20.038] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:23:0)
[22:31:20.038] Timer tick, asking Buildbucket for the build status
[22:31:20.175] Build 8905292997492075584: status "STARTED", result "", failure_reason "", cancelation_reason ""
[22:31:20.175] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-debug:9070723059901603184:24:0) after 1m0s
[22:31:31.256] Received PubSub notification, asking Buildbucket for the build status
[22:31:31.410] Build 8905292997492075584: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[22:31:31.410] Buildbucket build:
{
  "build": {
    "bucket": "luci.dart.ci.sandbox",
    "canary": true,
    "canary_preference": "CANARY",
    "completed_ts": "1565649090286907",
    "created_by": "project:dart",
    "created_ts": "1565647810427706",
    "id": "8905292997492075584",
    "parameters_json": "{\"builder_name\": \"pkg-linux-debug\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"06509e333deb74572f002a32af17043795b0988c\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@06509e333deb74572f002a32af17043795b0988c\", \"title\": \"06509e333deb74572f002a32af17043795b0988c\", \"url\": \"https://dart.googlesource.com/sdk/+/06509e333deb74572f002a32af17043795b0988c\"}, {\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@576ef913e44d3cc92eeede09b402a69015c1e56a\", \"title\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\", \"url\": \"https://dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}}",
    "project": "dart",
    "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://dart.googlesource.com/sdk\", \"revision\": \"06509e333deb74572f002a32af17043795b0988c\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@06509e333deb74572f002a32af17043795b0988c\", \"title\": \"06509e333deb74572f002a32af17043795b0988c\", \"url\": \"https://dart.googlesource.com/sdk/+/06509e333deb74572f002a32af17043795b0988c\"}, {\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@576ef913e44d3cc92eeede09b402a69015c1e56a\", \"title\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\", \"url\": \"https://dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a\"}]}, \"bot_id\": \"luci-dart-try-xenial-19-z02d\", \"branch\": \"refs/heads/master\", \"buildername\": \"pkg-linux-debug\", \"buildnumber\": 2666, \"clobber\": \"true\", \"got_revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\", \"new_workflow_enabled\": true, \"path_config\": \"generic\", \"recipe\": \"dart/neo\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"576ef913e44d3cc92eeede09b402a69015c1e56a\"}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_04709c3d2cec0ce0f55217a459be8bdc01153b7ba62263f168f4e1b941215170_v2\", \"builder_390c115de1588aa44715b0a51be737386537dace0abbffb181966fe58d365023_v2\", \"builder_635c0bb3820427a968ab7634a21d467f1fbfb282a832f78957d9cb848bd12e00_v2\", \"builder_6cbd46bb7b85f2b5182064189e0144fd34df9d1a71ef5b4bc3ca003434985b44_v2\", \"builder_7ac26ffb2555723738bb40d39fe5d89f2f2f3a436d29e8fb3937519466e06fbe_v2\", \"builder_d3f605031f0359b6be14171ddfffe0504bd58d556715fd9df0e268e1f74d422e_v2\", \"builder_e79e4fa11f608afe27285a2b715d6709804d66f477bc0718d5cc55180bae5c37_v2\", \"builder_ef4e78051aacd97781fa3b4a0c38a67eb92d20316dba819e596979ddb3594e9d_v2\", \"git\", \"goma_v2\", \"swarming_module_cache_vpython\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Broadwell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gpu\": [\"none\"], \"host_class\": [\"default\"], \"id\": [\"luci-dart-try-xenial-19-z02d\"], \"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\": [\"dart.tests\", \"luci.dart.try\"], \"python\": [\"2.7.12\"], \"server_version\": [\"4397-8786906\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-central\", \"us-central1\", \"us-central1-b\"]}}}",
    "service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
    "started_ts": "1565648114226445",
    "status": "COMPLETED",
    "status_changed_ts": "1565649090889772",
    "tags": [
      "build_address:luci.dart.ci.sandbox/pkg-linux-debug/2666",
      "builder:pkg-linux-debug",
      "buildset:commit/git/576ef913e44d3cc92eeede09b402a69015c1e56a",
      "buildset:commit/gitiles/dart.googlesource.com/sdk/+/576ef913e44d3cc92eeede09b402a69015c1e56a",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9070723059901603184",
      "scheduler_job_id:dart/pkg-linux-debug",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8905292997492075584/+/annotations",
      "swarming_tag:luci_project:dart",
      "swarming_tag:os:Linux",
      "swarming_tag:recipe_name:dart/neo",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:46a0b33b491cee10",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1565649090937052",
    "url": "https://ci.chromium.org/b/8905292997492075584",
    "utcnow_ts": "1565649091400770"
  }
}
[22:31:31.410] Invocation finished in 21m22.664469381s with status SUCCEEDED