Releases: green-coding-solutions/eco-ci-energy-estimation
v5.1 Transmitting of job_id, cpu_arch, os_name and job_id
This release provides no new functionality, but rather increases observarbility if you are running Eco CI in large heterogenous infrastructure.
Additionally following information is captures and also transmitted via API to the GMT instance:
- OS Name
- CPU Architecture
- Job ID
- Version of the Eco CI Plugin on GitHub / GitLab / Jenkins
Thank you @Lisi4ka59 for the contribution of this functionality! ❤️
Thank you @opheliagame for the much needed Readme overhaul which inhbited users from easily getting started with Eco CI! ❤️
What's Changed
- Bump actions/checkout from 4 to 5 in /.github/workflows by @dependabot[bot] in #137
- Bump actions/setup-node from 4 to 5 in /.github/workflows by @dependabot[bot] in #138
- Bump actions/setup-node from 5 to 6 in /.github/workflows by @dependabot[bot] in #139
- Upgrade readme examples to version 5 by @opheliagame in #142
- Bump actions/checkout from 5 to 6 in /.github/workflows by @dependabot[bot] in #143
- Add job_id, os_name and cpu_arch fields for GMT API by @Lisi4ka59 in #144
- Added numeric job-id instead of textual one for GitHUb. Updated also for Jenkins and GitLab by @ArneTR in #145
New Contributors
- @opheliagame made their first contribution in #142
- @Lisi4ka59 made their first contribution in #144
Full Changelog: v5...v5.1
v5.0 Grid Intensity choices - Constant or location-based
Electricity Maps gave us quite some trouble in the last months :(
Sadly they have not continued their offering for a free worldwide CO2 grid intensity through their API. The product was called "CO2 Signal" at the time of launch but discontinued.
The reality for Eco CI was: No more location based carbon intensity data and thus no more CO2 display at all :( :(
Thanks to the idea from @mrchrisadams we have now integrated a constant grid intensity option that is actually the default.
The default from Eco-CI is 472, which is the worldwide average value from Ember compiled by The Green Web Foundation from https://github.com/thegreenwebfoundation/co2.js/blob/main/data/output/average-intensities.json#L1314
Read up in the readme if you still want to continue location based data with APIs like ElectricityMaps if you have a global premium key.
What's Changed
Full Changelog: v4.7...v5.0
v4.7 Visual fixes in debug output
- Undersampling was coined as "Error". It is now correctly marked as warning
- Markdown tables ditched in favor of better readable HTML tables
What's Changed
Full Changelog: v4.6...v4.7
v4.6
The May comes with some minor improvements that make every sustainability enthusiast ready for the summer! (Official end of stupid release message jokes :) )
- THanks to the input from @raits we have reworked the collapsing in PR comments to have all runs from the same job_id visible.
- Thanks to @SimSon2710 we now have a nice user contributed machine running on Intel Xeon that helps other users select more power profiles but also walk through the PR (#123) to re-cap how the process of adding new data to Eco CI is done.
- Thanks to @SimSon2710 we now have some more bullet proofing and flexibility on where the metrics.txt is put on GitLab runs
Thanks folks! ❤️
What's Changed
- Adding API check for data by @ArneTR in #127
- Add variable to specify metrics.txt directory in GitLab by @SimSon2710 in #125
- Add intel xeon 6246 power data by @SimSon2710 in #123
- Adding Run-ID to Eco CI Output by @ArneTR in #124
New Contributors
- @SimSon2710 made their first contribution in #125
Full Changelog: v4...v4.6
v4.5 Backfilling for undersampling, better overhead display macOS hotfix
Eco CI has arrived in the spring season with a lovely new release!
- We had a bug in the macOS estimations. The hotfix was already on main for a couple of days. Now coming to the v4 release. All previous data of macOS should be considered unreliable! Please re-run your pipelines
- Eco CI now backfills data. To introduce not too much overhead we sample at 1s. However when steps are very short (2-3s) undersampling hits really hard and you might "miss" 50% of your energy. This is not relevant for many users which run typically 20 minute runs, but we have some users that run ~5s runs for hundrets of times a day. With backfilling we estimate now the last missing part of a second and thus reduce missing data.
- Overhead of Eco CI is now displayed nicer and more clearly in the table. See this:
Happy CI/CD runs everybody!
What's Changed
- macOS Hotfix for CPU utilization by @ArneTR in #120
- Introducing backfilling of undersampling; Adding notes option for errors by @ArneTR in #121
Full Changelog: v4...v4.5
v4.4.1 Hotfix for Linux
In some circumstances Linux energy values where absurdly high (kW). this hotfix patches the issue
What's Changed
Full Changelog: v4...v4.4.1
macOS support
macOS is now supported for the standard GitHub shared runners:
macos-13macos-14
Find infos here on the assumptions made and parameters set for the energy estimations:
- Parameter assumptions for GitHub Shared runners
- Assumptions and data sources of the underlying non-linear ML model
Thanks to @michaellilltokiwa for testing it out and opening the issue that led to the feature!
What's Changed
Full Changelog: v4...v4.4
v4.3 - Jenkins support and macOS beta
Hooray, Jenkins support finally has a documentation!
It was available before, but now it has an official place in the documentation. For anyone trying: We love your feedback on it! And also happy to take PRs if you want to contribute to the documentation.
We also added first macOS support. It should work, but is still in beta. Let us know how it works with your runners!
What's Changed
Full Changelog: v4...v4.3.0
v4.2- Totals Badges in PR view
Eco-CI will now show Summarized information on PR Comments.
This means that if you push multiple commits to the PR it will not only show the last carbon and energy cost, but the cumulated one.
Thanks to @Zeitsperre for the idea!
Furthermore there are also 30-Day averages, Last-30-Day totals and more! See this PR discussion for details: #107
What's Changed
Full Changelog: v4...v4.1.0
v4 Release
Important: First of all thanks to our many contributors for this new version ❤️
New features
-
Eco-CI is now greatly reduced in overhead. Most of the changes we describe in the pre-release notes.
- The footrpint is greatly reduced from > 200 MB to < 1 MB
- The overhead is reduced from ~ 20 seconds to almost zero due to pre-calculation of the power profiles
-
Eco-CI is now compatible with the new GMT endpoint format
/v2/ci/measurement/add- This is mostly an internal change, but allows you to use CarbonDB 2.0
What's Changed
- Update to cache@v4 by @jan-kiszka in #71
- Changes the ip resolver from ip-api.com to ipapi.com because of https by @ribalba in #78
- Pre calculated Machine energy profiles by @ArneTR in #76
- Better overhead and api by @ArneTR in #83
- api-base is now github.api_url by default by @ArneTR in #82
- Bump actions/checkout from 3 to 4 in /.github/workflows by @dependabot in #93
- Bump actions/setup-node from 3 to 4 in /.github/workflows by @dependabot in #94
- Update overhead_test.yml by @ribalba in #90
- Fix indentation of display-results task by @ceddlyburge in #98
- Testing CarbonDB 2.0 by @ArneTR in #100
- Microseconds microgramm by @ArneTR in #101
- Electricitymaps unified by @ArneTR in #102
- Alpine requires coreutils to get timestamp in microseconds by @davidkopp in #104
New Contributors
- @jan-kiszka made their first contribution in #71
- @dependabot made their first contribution in #93
- @ceddlyburge made their first contribution in #98
- @davidkopp made their first contribution in #104
Full Changelog: v3.1...v4.0.0