Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add non legacy builders (<10.9) #119

Merged
merged 3 commits into from
Oct 20, 2019
Merged

Conversation

arjunsalyan
Copy link
Member

@arjunsalyan arjunsalyan commented Sep 25, 2019

I will soon be doing the table related changes, but till then it would be better to not miss on the build history for the new builders.

#117

@arjunsalyan
Copy link
Member Author

I have applied this to the test site:

http://ec2-52-34-234-111.us-west-2.compute.amazonaws.com/ports/all_builds/

@codecov
Copy link

codecov bot commented Sep 25, 2019

Codecov Report

Merging #119 into master will increase coverage by 0.42%.
The diff coverage is 93.1%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #119      +/-   ##
==========================================
+ Coverage   73.91%   74.34%   +0.42%     
==========================================
  Files          46       48       +2     
  Lines        1342     1364      +22     
==========================================
+ Hits          992     1014      +22     
  Misses        350      350
Impacted Files Coverage Δ
app/ports/migrations/0011_populate_display_name.py 100% <100%> (ø)
app/ports/filters.py 100% <100%> (ø) ⬆️
app/ports/models/buildhistory.py 21.42% <100%> (+0.81%) ⬆️
app/ports/migrations/0010_builder_display_name.py 100% <100%> (ø)
app/ports/views.py 57.75% <66.66%> (ø) ⬆️

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 cbf3672...f0a2e47. Read the comment docs.

@mojca
Copy link
Member

mojca commented Sep 25, 2019

I would ideally like to see just one instance of 10.6 on port health status, and just one entry in the filter.

@arjunsalyan
Copy link
Member Author

I would ideally like to see just one instance of 10.6 on port health status, and just one entry in the filter.

I am working on the new table design, shall I simply hardcode the os_arch_key and display_name columns?

@arjunsalyan
Copy link
Member Author

This PR is not in the stage of merging right now, as it will cause migration conflicts with #126 .

@arjunsalyan
Copy link
Member Author

I have deployed this on the test site. I am utilising only one additional field display_name.

Does it seem right now? @mojca
http://ec2-52-34-234-111.us-west-2.compute.amazonaws.com

@mojca
Copy link
Member

mojca commented Oct 10, 2019

Can you please try to import at least a few builds (even if just ten builds per worker)? I don't yet see any builds shown after the 22nd of August to be able to see how it works.

@arjunsalyan
Copy link
Member Author

Can you please try to import at least a few builds (even if just ten builds per worker)? I don't yet see any builds shown after the 22nd of August to be able to see how it works.

I have started the process, the fetching should finish within next 10-15 minutes.

@arjunsalyan
Copy link
Member Author

Also, please do a hard refresh in the browser so that the changes to the javascript get reflected.

@mojca
Copy link
Member

mojca commented Oct 10, 2019

Can you please point me to some actual builds?

@arjunsalyan
Copy link
Member Author

arjunsalyan commented Oct 10, 2019

Can you please point me to some actual builds?

On the page: http://ec2-52-34-234-111.us-west-2.compute.amazonaws.com/ports/all_builds/ select builder 10.8.
Now, the first 20 builds refer to the builder 10.8_x86_64 (2285 to 2304) while the builds below it refer to the builder 10.8_x86_64_legacy.

The app is initially set to fetch only 20 builds for those builders which do not have any builds in the database, that is why we only get the latest 20 builds for the newly added 10.8_x86_64. We will need to decide this number.

And I also missed adding non-legacy builder for 10.6_i386.

@mojca
Copy link
Member

mojca commented Oct 10, 2019

Perfect, thank you. They are there now, but I didn't see them earlier.

The all_builds works precisely as desired. The port health on the other hand is picking up the legacy workers, maybe because you sorted by build number (but I didn't check).

That said, the port health has other flaws, like: the user doesn't see if the worker is offline, or the latest build is still pending (10.5/ppc has been offline for ages and port health shows just whatever was built last); I would attempt to fix this with buildbot 2.

Fetching just the latest 20 builds sounds fine. But we would need to distinguish between two different scenarios:

  • users or temporary servers who just want to test a new feature (we don't want them to fetch all builds, at least not automatically)
  • production server where we really want to fetch all builds (and we need to try to do this before they go "out of focus" and get deleted)

I'm ok with merging this now and fixing the issue with port health immediately after that.

Copy link
Member

@mojca mojca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two hopefully minor changes to fix, and then we can merge it.

And then separately think of the best way to fetch all builds just on production machine.

Comment on lines 90 to 91
all_latest_builds = BuildHistory.objects.all().order_by('port_name', 'builder_name__display_name', '-build_id').distinct('port_name', 'builder_name__display_name')
port_latest_builds = list(BuildHistory.objects.filter(id__in=Subquery(all_latest_builds.values('id')), port_name__iexact=name).values('builder_name__name', 'builder_name__display_name', 'build_id', 'status'))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can no longer sort by build id. Maybe by time_start?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, thank you.

@arjunsalyan
Copy link
Member Author

This is probably ready to be merged now? I am sorry for the delay.

@mojca
Copy link
Member

mojca commented Oct 20, 2019

Cool, perfect.

Now we just need a way to fetch the old builds (fetch them all on the main server without having to fetch them on some test instances).

@mojca
Copy link
Member

mojca commented Oct 20, 2019

Ok, we are still missing a few fixes. Looking at http://ec2-52-34-234-111.us-west-2.compute.amazonaws.com/port/qt59-qtserialport/, the builds are still picking the wrong builder. It works correctly if you switch to a different tab.

It might make sense to clean up the code a bit, but for now at least we should fix that bug.

@arjunsalyan
Copy link
Member Author

Ok, we are still missing a few fixes. Looking at http://ec2-52-34-234-111.us-west-2.compute.amazonaws.com/port/qt59-qtserialport/, the builds are still picking the wrong builder. It works correctly if you switch to a different tab.

I am sorry, could you please specify it more? Also, the recent changes (made today) have not been deployed to the test site due to migration conflicts.

@mojca
Copy link
Member

mojca commented Oct 20, 2019

I am sorry, could you please specify it more?

Hmmm ... I can no longer reproduce what I saw. The most likely explanation is that I was accidentally looking/clicking at the 10.7 builder which still points to the legacy build. It might have to do with me travelling on a bumpy road while trying to concentrate on the screen :) :) :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants