SUPERAndroidAnalyzer / super

Secure, Unified, Powerful and Extensible Rust Android Analyzer
https://superanalyzer.rocks/
GNU General Public License v3.0
421 stars 59 forks source link

Automated Linux packaging and deployment #164

Closed Razican closed 6 years ago

Razican commented 6 years ago

This is meant to fix #40 and #149.

Still WIP: packages are not being installed and tested.

Razican commented 6 years ago

So, apart from the windows build issue that it's really easy to fix, builds are taking too long when we generate packages. This can be an issue, since I don't know if the deployment scripts count towards the time limit. Example.

An option I'm thinking about would be to divide the package generation with a Travis build matrix. Setting up a variable for the package generation. We can use job exclusion so that we don't end up with 50 jobs.

Deployments are already only done in stable Rust channels and only on Linux builds, so if we generate packages in multiple jobs, all of them will be uploaded. This also means that we can check our 4 targets in each build, and that builds will be shorter, which is nice.

codecov[bot] commented 6 years ago

Codecov Report

Merging #164 into develop will increase coverage by 1.24%. The diff coverage is 100%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #164      +/-   ##
===========================================
+ Coverage     39.7%   40.95%   +1.24%     
===========================================
  Files           16       15       -1     
  Lines         4480     4344     -136     
===========================================
  Hits          1779     1779              
+ Misses        2701     2565     -136
Impacted Files Coverage Δ
src/results/report/json.rs 0% <ø> (ø) :arrow_up:
src/main.rs 100% <ø> (ø) :arrow_up:
src/results/report/handlebars.rs 25% <ø> (ø) :arrow_up:
src/static_analysis/mod.rs 0% <ø> (ø) :arrow_up:
src/config.rs 81.96% <ø> (ø) :arrow_up:
src/lib.rs 30.32% <ø> (ø) :arrow_up:
src/static_analysis/code.rs 66.53% <100%> (ø) :arrow_up:
src/results/mod.rs 0% <0%> (ø) :arrow_up:
src/static_analysis/certificate.rs

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 126540d...08b130f. Read the comment docs.

Razican commented 6 years ago

Everything seems to work as expected, packages will be build for each distribution in every build, so I'm guessing that it's enough for now. I finally used Matrix include statement instead of exclude statements, since it's shorter and cleaner.

The only thing that was mentioned in #40 but that is not implemented yet, is the package installation and running tests, which I think it's an overkill if we don't find any further issue. I'm thus closing all the 3 (#40, #149 and #159, this last one already closed).

About that terminal coloring, I will create a new issue to add the explanation in the README that on Windows it should be built with the no-color feature.