Remove the support of python3.4, because
in Ubuntu Xenial only (python3.4 is
restricted to <= Mitaka).
Change-Id: Ibcc22f7da056c1db7cb3901fd63ff40adaa0f11c
Closes-Bug: #1801855
The subunit stream is a binary protocol and can't be encoded to utf8.
Unfortunately under python3 the default behavior when reading from
stdin or opened files is to read them encoded as your platform dependent
encoding. For linux users this is typically utf8 and subunit isn't valid
utf8. Fix this by reading the subunit streams as binary under python3 as
we do on python2.
Change-Id: I1ddfe514c219c3bbfcd69f6808faa2331933acee
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I7d8972a912315a70359a7b6ff7c191bbe51ddf7c
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This is a mechanically generated patch to add a unit test job running
under Python 3.6 as part of the python3-first goal.
See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html
Note that python36 fails installing nodejs-legacy since bionic does not
include it. Install nodejs-legacy only on Xenial.
Change-Id: Id8fbe2d5188054924eacb74bcfc52b49fd8a1d84
Story: #2002586
Task: #24327
This is a mechanically generated patch to switch the documentation
jobs to use the new PTI versions of the jobs as part of the
python3-first goal.
See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html
Change-Id: I0b373b18715fec1bed6894bb324d104fb78893e6
Story: #2002586
Task: #24327
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.
Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.
Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.
See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html
Change-Id: I9bb961a1c6ca5c38144471fe6fa4c7098d45b752
Story: #2002586
Task: #24327
This commit fixes some indentations in stackviz docs. These indentations
are weird. There's no specific reason to keep it.
Change-Id: Ib9805b5c7d3ba5a4b44045424fed4493322dcd67
This commit fixes the stackviz docs to show some manual pages and some
tiny sectioning. And this commit also updates to use the new theme.
There are still remaining weird indentations and some other tiny
formatting bugs. However, we can fix them in following patches.
Change-Id: I1ab055efb9bc5653f98be165cd2be3ac9cc5cd27
It seems that on a CI node, we just want to have approximately "pip
install stackviz" and have it "just work".
This makes "npm run prod" produce a .tar.gz appropriate for this.
Firstly, I have moved the gulp output to "gulp-build" rather than
"build" because "build" is generic and can get distutils confused.
Second, after building with gulp, we tack on a "setup.py sdist" call
to generate the final package.
Thirdly, the MANIFEST.in is updated to prune out unneeded files from
the final distribution. pbr is putting everything in git into the
manifest, but we can trim all all the nodejs source stuff. The
generated files in gulp-build are added to the manifest (since they're
generated, and not in git).
Finally, these are added via data-files as "share/stackviz-html". This
is essentially standalone and can be moved, or symlinked to as required.
The end result is that the .tar.gz created is installable on nodes an
contains everything required to run stackviz.
Documentation is updated.
Change-Id: I64cbc7e90bd2610733c9d5c6275cce99f2571883
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Bindep is a tool for checking the presence of binary packages needed
to use an application / library. As such, add our npm / nodejs
dependencies to stackviz.
This is needed so we can produce static builds for our
diskimage-builder images for nodepool.
Change-Id: Ib268ba47e870546fbf6d09284b7b4d85ab44ce6f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
mysql-python is not py3.x compatible, and it's actually a
transitive dependency for subunit2sql, so dropping it from
the requirements. subunit2sql will pull the right package.
Also replacing py34 with py35 in tox.ini, since py35 is the
version of py3 used by OpenStack in Pike.
Change-Id: I195d479be05c78619f1e8a69e19350558d0b5534
This ports over the change from [1] that fixes the docs build, caused
by a bad docutils version.
[1] https://review.openstack.org/#/c/410038/
Change-Id: I5ca5b7d0c2c4c2242d0738762ede3b24202a1e52
The openstack directory was used to keep codes from oslo-incubator,
we have retired oslo-incubator,so don't use this directory any more.
Change-Id: I66deba146f1669b070dac0ecc72e350822612cf8
stackviz already uses PBR:-
setuptools.setup(
setup_requires=['pbr'],
pbr=True)
This patch removes `MANIFEST.in` file as pbr generates a
sensible manifest from git files and some standard files
and it removes the need for an explicit `MANIFEST.in` file.
Change-Id: I02df186f37b3ba269a3bb3390c2d2cf5b48776e7
The directory openstack/common was used to keep codes from
oslo-incubator, we have retired oslo-incubator, so we needn't use
this directory any more.
Change-Id: If23d29e41fdea0c9e83331011c81a0d5b8283a27
In the nested 'data' array, nested lists of tests should be sorted by
their worker key. However, the 'd3.ascending' comparator sorts by
string rather than numerically, resulting in the array being out of
order with more than 10 workers. This caused item selection (but not
hovering) to break after the second row.
This patch replaces the built-in comparator ('d3.ascending') with a
comparator that uses parseInt() to make sure the nested lists are in
the correct order for fast lookups.
Change-Id: Idbd94369fb35f4cf03c39b0c9fa2cc07623885ab
Currently builds are failing due to a dependency-of-dependency update
in gulp-header (via gulp-angular-templatecache) that is looking for
a file that doesn't exist. This adds an empty file to satisfy it as a
workaround.
Change-Id: I6849892d8f6d4a397f6fc29975041c6da9fef0f8
This switches the codebase to use only specific d3 (version 4) modules
rather than the entire d3 (v3) package, resulting in a decent shrink
in build size (~75KB reduction).
Change-Id: I9f6a5d039d6340cc28115337bdfb891d15af7057
This disables sourcemap generation for production builds to save on
disk space. While useful, source maps are several times larger than
our actual used code, so it's best to only keep them around during
development.
This also turns off gzip, since it is just duplicating files for now;
we'll want to reconsider this feature once StackViz is building inside
the gate if links start breaking.
Change-Id: Ie4c2735c08014f417b8f1f68fc8f6b9e4898dff2
This removes the top fixed navbar in favor of breadcrumb navigation.
The top navbar no longer makes sense with generic artifact types, and
never rendered correctly on small displays (particularly mobile
devices). Instead, each page now displays a small breadcrumb menu.
Change-Id: I18a8bbae24b237e503563cabf854413a54f4be72
This adds a new 'scripts' entry to 'package.json' to run 'gulp prod',
eliminating the need for a global install of gulp.
Change-Id: I383e5bf99f6e9e2c7d5fa5c894ef573fa06facd7
This fixes a potential race condition during the build process, where
the 'browserify' task could attempt to run before the views had been
compiled, resulting in build failure. This change makes the
'browserify' task wait for views to finish before running.
Change-Id: I8358812a90caf006c18220b643347848f15779fe
This adds a new console.html summary and details view that can
gives overview information about console output, organizes output
by section, and can also determine the currently running script at
job failure time. The console viewer is a CodeMirror-based widget
that provides basic highlighting and folding capabilities to make
console output easier to browse.
Change-Id: I27a9a532ae117d2914dc2f3a866c780378e79f72
Currently, the home page has a hard-coded summary panel specifically
for displaying overviews of subunit artifacts, which makes it
impossible to show information on other types of artifacts. This adds
a new 'summaryService' and associated 'artifact-summary' directive
that can dynamically create summary panels depending on artifact type.
Additionally, since the summary service allows many summary panels per
type per named artifact, we can have multiple (priority-ordered)
panels for each artifact. As an example of this, the existing subunit
summary has been split into simpler 'subunit-summary' and
'subunit-errors' panels.
Change-Id: I0d075dfcb86c6aef8c697896d1728e970b62600f
This enables a new "artifact"-based configuration file format,
intended to work natively with the deployer and to aid future efforts
to visualize additional data sources.
Among other tweaks, dataset indices are no longer used as the primary
differentiator between data files, and instead artifact names (such as
`testrepository.subunit`) are used to group related artfacts of various
types, such as 'subunit', 'subunit-stats', and 'subunit-details'.
Additionally, datasets and artifacts now have access to substantially
more metadata about the job that generated the output data. In future
patches, this metadata will be used to display and link to additional
information about visualized data. This metadata is made available
automatically by the deployer, and can be optionally gathered from
environment variables when using `stackviz-export` via a new `--env`
flag.
Change-Id: I3e16cc314624a1b7b4f6bf43fa4d5cdeedcdba0c
Adds additional information to the stackviz-export and stackviz-front
technical documents. Info about `stackviz-export` output files is
now included in the corresponding document. Directive and service
descriptions were added to stackviz-front, alongside inline comments
in the appropriate .js files.
Due to the unique structure of GitHub's RST renderer, includes will
no longer be used in the main README.
Change-Id: Iaebf1f1c3b5e4cbb4ea5e262f85672bc082bbe2f
This adds a new timeline renderer using a plain canvas element,
replacing the d3 and svg-based renderer. This new implementation
greatly improves timeline performance, especially on less powerful
graphics cards, and more than doubles the resulting framerate while
panning the view by aggressively caching previously rendered chart
regions. Additionally, worst-case memory usage is greatly reduced
during heavier periods of user interaction.
This new implementation also removes several previous limitations.
Due to cached rendering a nearly unlimited number of objects can be
shown at any time with no performance impact, so small objects never
need to be hidden from view at any zoom level. Also, view transitions
can now be smoothly animated, and reach a stable framerate even on
older mobile devices.
Change-Id: Ib883e056270eff688b4b4a0c340eaea20cceb181