[bug] CoreDNS Dashboard No Data

Describe the bug
Hi, and thanks for the good set of Dashboards @dotdc !
I'm having some trouble with the CoreDNS dashboard.
Several graphs and statuses don't show any data, displaying the "No Data" placeholder.
I've noticed that the filter for CoreDNS is a job and not a pod.
At least in my EKS, the CoreDNS is a daemonset and not a job.

Is there something I could do or change?
Thanks =D !
How to reproduce?
No response
Expected behavior
No response
Additional context
No response

Hi @felipewnp,
Do you have any metrics from the broken panels?
If yes, could you share sample data for one or two?

Hi @felipewnp, Do you have any metrics from the broken panels? If yes, could you share sample data for one or two?

I've found that the job name in the Prometheus metrics is not coredns, but kube-prometheus-coredns.
Not sure why.
When I changed the Dashboard JSON to kube-prometheus-coredns, it started working.
What is supposed to be the default value?

@felipewnp
For the job, you could rename it using a relabeilling rule, but the job label is only used by:

CoreDNS - Health Status
CoreDNS - CPU Usage by instance
CoreDNS - Memory Usage by instance

This doesn't explain the no data on the other panels.
Could you share:

setup information (k8s version, kube-prometheus-stack version...)?
sample data from coredns_dns_requests_total in Grafana explore for example?

Data example:
coredns_dns_requests_total{container="coredns",endpoint="http-metrics",family="1",instance="<IP_ADDRESS>:9153",job="coredns",namespace="kube-system",pod="coredns-5d78c9869d-2lc7d",proto="udp",server="dns://:53",service="kube-prometheus-stack-coredns",type="A",zone="."}

Hello
I had the same issue,
The job label is also used in the $instance variable that is used in all the other panels

@dotdc Hey,

but the job label is only used by:
CoreDNS - Health Status
CoreDNS - CPU Usage by instance
CoreDNS - Memory Usage by instance

Is this on purpose?
What do you think about replacing job with $job, and add ad-hoc filter for them?

I had same issue on "standard" Prometheus. Moving to Kube Prometheus stack fixed the issue. Probably Core DNS exporter is missing.

Sorry for the delay.
Just made a PR with a potential fix : https://github.com/dotdc/grafana-dashboards-kubernetes/pull/77
Let me know if this solves the issue on your side.
cc @felipewnp @rcattin @Haleygo

Hi @dotdc Also sorry for the delay.
It fixed a lot of the items in the CoreDNS dashboard, but these 3 are still broken:

I think it's because the job filter in these graph items are hardcoded to "coredns" and not to the $job variable:

Should/Can I make a PR for this change?

Hi @felipewnp,
You're right, sorry about that.
Of course, you can make a PR, please also bump the version of the dashboard.

Hi @dotdc
I'me facing the same issue on my end
Not sure what was the solution ?
I'm still new to grafana and prometheus

Hi @dotdc
I'me facing the same issue on my end Not sure what was the solution ?
I'm still new to grafana and prometheus

This should be fixed by #89
Can you try with the latest version?

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


fix(sql): discard sql dialect auto mapping

fixes: #35, #34, #26
BREAKING CHANGE: sql identifier -> dialect auto mapping discarded

It's working for me 🙌  for the ::jsonb->0 test case in https://github.com/Sec-ant/prettier-plugin-embed/issues/35
package.json
"prettier-plugin-embed": "https://pkg.csb.dev/Sec-ant/prettier-plugin-embed/commit/dc1eb180/prettier-plugin-embed"

The fix is released in v0.3.0.


Release GKE

Toutes les releases GKE

https://cloud.google.com/kubernetes-engine/docs/release-notes#may_08_2020


 Tredly version - tredly 1.1.7 (built: August 2 2016)

Closing this as it is a duplicate of https://github.com/tredly/tredly/issues/82 . The code for this is in vuid-com's integration branch and will make it out with next release (likely 1.1.8)


Bulk Edit Button

I love the Bulk Edit button, but it might be worth changing the button label on the actual editor form from "Bulk Edit" to "Apply Changes" or "Replace All" - it's very low prioirty, but i had to think twice about whether it would actually implement the changes. The Bulk Edit label is great on the keyframe grid.

Thanks, changed.


Add miles/time/percentage to next waypoint to challenge leaderboard

Is your feature request related to a problem? Please describe.
Describe the solution you'd like
Would be nice to have how much time or miles to the next waypoint on the leaderboard.  This plays into having more happen at each waypoint like picking up badges etc.  Sort of like those video games where you run around picking up gems and such.  At this point, the team leads etc are just looking to see who got there on there own.
We be need also when you click on the waypoint you have the option to go to notes, videos etc for the significance of it.  A bity URL or something maybe.  For example, when we reach CDA they are gonna do a video of how B did at the race.
Describe alternatives you've considered
Additional context

I think it would be great and also maybe one could pick up a patch or something on the way like those video games where you run through shit to get gems and such.


NPE when describedAs(null)

Summary
I would not expect this to throw an NPE.
The assertion is clearly valid the describedAs just provides additional information, in this case none.
A possible work around could be to implement a custom Description but syntactically this is ugly.
Example
String someReturnedFailureMessage = null;
assertThat(1).describedAs(someReturnedFailureMessage).isEqualTo(1);

For comparison with JUnit Assert, does not throw an NPE:
String someReturnedFailureMessage = null;
Assert.assertThat(someReturnedFailureMessage , 1, is(1));

I fail to see a use case for a null description, you could use as(String description, Object... args) like as("%s", descThatCanBeNull).

I guess this can be closed?

I guess this can be closed?

I still think it shouldn't throw an NPE, but if people think otherwise than close the issue.

I still think it shouldn't throw an NPE, but if people think otherwise than close the issue.

@juddgaddie rethinking of it, we could replace a null description by an empty String, is this what you expect ?

As I showed in the first 2 code snippets I expect Assertj to not throw an NPE when a null description is passed in. Just like JUnit Assert. I'm not sure what you mean by "we could replace null description by an empty String" do you mean after it is passed in to describedAs?

to treat it as assertThat(1).describedAs("")


rhinosinusitis

Add:
rhinosinusitis (a child of both sinus inflammation MP:0001872 AND rhinitis MP:0001867 )
DEF: local accumulation of fluid, plasma proteins, and leukocytes in the mucous membranes of the nose and in one or more paranasal sinuses
SOURCE: https://www.merriam-webster.com/medical/rhinosinusitis
J:185566
Anna

rhinosinusitis MP:0030118

Remove rhinosinusitis from under rhinitis

don't remove from rhinitis, term is inflammation of nasal and sinus membranes, so it should be under both


CSS Selector Bridge error on Mobilizon

Hey, hope this is a bug and not me not understanding how it work

Profil CSS Selector Bridge
Site URL: Home page with latest articles : https://mobilizon.fr/search?locationName=Quimperlé&lat=47.8707&lon=-3.554068&distance=50_km&page=1&target=INTERNAL&contentType=EVENTS&eventPage=1
Selector for article links or their parent elements : a.mbz-card

Exception: No results for URL selector in lib/utils.php line 242

index.php(11): RssBridge->main()
lib/RssBridge.php(113): DisplayAction->execute()
actions/DisplayAction.php(71): DisplayAction->createResponse()
actions/DisplayAction.php(106): CssSelectorBridge->collectData()
bridges/CssSelectorBridge.php(89): CssSelectorBridge->htmlFindEntries()
bridges/CssSelectorBridge.php(190): returnClientError()
lib/utils.php(242)

Query string: action=display&bridge=CssSelectorBridge&home_page=https%3A%2F%2Fmobilizon.fr%2Fsearch%3FlocationName%3DQuimperl%25C3%25A9%26lat%3D47.8707%26lon%3D-3.554068%26distance%3D50_km%26page%3D1%26target%3DINTERNAL%26contentType%3DEVENTS%26eventPage%3D1&url_selector=a.mbz-card&url_pattern=&content_selector=&content_cleanup=&title_cleanup=&limit=&format=Html
Version: 2023-09-24
Os: Linux
PHP version: 7.4.33

...Guess that one was obvious too. I don't think there is anything to do against javascript page loading, hue ? My bad then.


Update README.md

Adding a note to help windows users to avoid install an error, as detailed here: https://stackoverflow.com/questions/29045140/env-bash-r-no-such-file-or-directory

Hi,
Thanks for the suggestion but I'm not sure if it's worth documenting non-WSL Windows support in that much detail since the run script is a shell script. Basically it's kind of expected you'll be using WSL, macOS or native Linux to use this project in its intended way.
Your proposed git command will work but you'll also want to configure your code editor to write files with Unix (lf) line endings instead of Windows (crlf) line endings or you may run into similar issues. Doing both of those things might be a conflict of interest for a primary Windows developer since your other projects won't want git and your code editor configured that way -- only this project.
Going over all of that takes up prime space in the README file for a potentially small subset of users.
I'm open to maybe including 1 sentence under "Did you receive a permission denied error" in the README in its own paragraph if we can include all of that context in 2 lines of documentation.

Gotcha, totally understand - it was my mistake when installing it tbh as I opened the wsl following the git clone and so the issue still arose, and thought it could help other new people like me.
Thanks for sharing the perspective of saving space, its a really good point and since I'm new to contributing to gits and doing readme's I appreciate the learning! In line with this, I've tried to do one better than its own paragraph and shorten it further making it less than a line by extending the sentence which you already wrote about editing for powershell and just linking to the SO thread.
Hope that's okay - if not, let me know and I'll adjust it inline with your previous suggestion.
Also, mad love for your work on this, as well as your support for Hotwire. I was inspired to choose the Turbo/Stimulus package over HTMX/Alpine due to seeing your podcast site on a forum in a related thread. I'm going to attempt to get Hotwire working with your repo over the next few days and have some questions which I'll ask in a separate thread.
I've also signed up for your deploy to production course; looking forward to it!

Thanks for the kind words.
By the way I just released a video today creating a dropdown menu with Stimulus at https://nickjanetakis.com/blog/a-dropdown-menu-using-stimulus-and-tailwindcss-with-escape-key-support and the example Rails app https://github.com/nickjj/docker-rails-example has Stimulus built in by default. You can copy that directly to this Django app since it's all front-end related integration.
I think we can still tweak the location and wording of this Windows message, I'll get back to you by tomorrow on that.

Hi,
I do think we should place this near the other sentences under the up command that would cause the error.
It could look something like this:

...
Now that everything is built and running we can treat it like any other Django app.
Did you receive an error about a port being in use? Chances are it's because something on your machine is already running on port 8000. Check out the docs in the .env file for the DOCKER_WEB_PORT_FORWARD variable to fix this.
Did you receive a permission denied error? Chances are you're running native Linux and your uid:gid aren't 1000:1000 (you can verify this by running id). Check out the docs in the .env file to customize the UID and GID variables to fix this.
On Windows (PowerShell) and received a "bash no such file or directory error"? You'll need to configure git and your code editor to use Unix (LF) line endings instead of Windows (CRLF) line endings. I'd suggest using WSL 2 instead too.

But I'm still on the fence on adding this since using PowerShell will also result in not being able to use the run script, hmm.

Sorry for being MIA for a while - been absorbed in other things. This looks great, definitely a nice middle ground!
Let me know if I need to do anything additional with this!

Sorry for not replying in a year, I think I missed the notification.
As for using Windows, if you use WSL 2 you'll be good to go with the run script since it's a proper Linux environment. It's how I do all of my development on Windows.
With that said I think we can close this since there is a path forward on Windows and suggesting to use PowerShell will result in future compatibility issues.


Add Forms

Inkling Blog App | Add Forms #7
Project Description
Use forms to add new Post, Comment, and Like for the Inkling Blog app.
Feature Description

Created a method called #current_user in the ApplicationController to make current user data available to all controllers.

#current_user returns the first user from the database.

Created forms to perform the following functions:

Creates a new Post on behalf of the current_user.
Creates a Comment on behalf of the current_user .

Allow User (current_user) to Like a Post.

Recommendations
An optional boilerplate of data entry for testing the app is contained in the db/seed.rb. Run the following commands in sequence to be able to use the boilerplate.
# Create Database
rails db:create

# Generate Database Tables
rails db:migrate

# Use Boilerplates to Populate Tables
rails db:seeding

# Use Boilerplates to Populate Tables
rails server

Preview
New Posts

Comments and Likes

Happy Reviewing!!!!!

Hi @PraisesPJMT,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
Highlights

The Pull Request has a proper title and description. ✔
You have added a descriptive Readme file. Good Job. ✔
There is no linter error is present. ✔
Project has met all the technical aspects you needed for this project. Keep rocking! ✔

Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Thanks so much @arslanbisharat  for the feedback! I appreciate your amazing review!


reference to time_ave.rc changed from $GEOSUTIL/bin to $GEOSUTIL/post

This fixes #100.

Ah. Must have been a too aggressive search-and-replace. Good spotting this!


Consistency across report and dataset titles

Two reports starts with 'Comparative' and not the other two reports.

This was fixed when we added report labels.


System.ArgumentNullException has been thrown "Value cannot be null.\nParameter name: options"

Version
4.4.4
Describe the bug
When I call dialogContext.BeginDialogAsync("sign-in"), it errors saying parameters can't be null. I clearly provided parameters and the documentation shows this function being called without additional parameters anyways. All that's needed is the first parameter. I've been stuck on this for hours and don't know where to begin debugging because this error message is not true. See screenshot below.
To Reproduce
Steps to reproduce the behavior:

var dc = await this.dialogs.CreateContextAsync(turnContext, cancellationToken);
await dc.BeginDialogAsync("sign-in", new object(), cancellationToken);
Run bot.
See error.

Expected behavior
No error, or an accurate error message.
Screenshots

Additional context
I ran this in VS for Mac and VS Code and received the same results. It was working before. I did some code refactoring and now it breaks, but I don't remember what changes I made. Regardless, the error message is still wrong. I've also opened an issue in StackOverflow here hoping to get a response soon as I've been stuck on this for a while now.
Code snippet
public FlexoBot(ConversationState conversationState)
{
    this.dialogState = conversationState.CreateProperty<DialogState>("dialog-state");
    this.dialogs = new DialogSet(this.dialogState);

    // Make oauth card available to use for all handlers
    this.dialogs.Add(new OAuthPrompt("oauth", new OAuthPromptSettings() {
        ConnectionName = "flexo-auth",
        Title = "Please sign in."
    }));

    dialogs.Add(new WaterfallDialog("sign-in", new WaterfallStep[] {
        PromptSignIn,
        GreetUser,
    }));
}

protected override async Task OnMembersAddedAsync(IList<ChannelAccount> membersAdded, ITurnContext<IConversationUpdateActivity> turnContext, CancellationToken cancellationToken)
{
    foreach (var member in membersAdded)
    {
        if (member.Id != turnContext.Activity.Recipient.Id)
        {
            var dc = await this.dialogs.CreateContextAsync(turnContext, cancellationToken);
            await dc.BeginDialogAsync("sign-in", new object(), cancellationToken);
            // Throws: System.ArgumentNullException has been thrown "Value cannot be null.\nParameter name: options"
        }
    }
}

[bug]

I finally figured it out. It's because I was calling return step.PromptAsync("oauth", null); in one of my waterfall steps. I changed it to:
return step.PromptAsync("oauth", new PromptOptions { });

And it works now. The error message completely tricked me. I hope there will be a fix for this misleading error message.

The existing code in PromptAsync seems correct to me. The code is
        public async Task<DialogTurnResult> PromptAsync(string dialogId, PromptOptions options, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (string.IsNullOrEmpty(dialogId))
            {
                throw new ArgumentNullException(nameof(dialogId));
            }

            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            return await BeginDialogAsync(dialogId, options, cancellationToken).ConfigureAwait(false);
}

I don't see how we could reasonably make that more clear - the Exception call stack is there, the argument name is there, and the exception type is correct.
The only option would be to accept null when it's passed in, which is something we try to avoid doing.

What would you suggest as a fix?

Ok... I'm actually not sure if this is a Visual Studio issue or a butbuilder-dotnet issue. When running the debugger, I was hoping it would error on this part of the code: step.PromptAsync("oauth", null);. But instead, it encountered an error on this part of the code: await dc.BeginDialogAsync("sign-in", new object(), cancellationToken); Because of this, I thought the error was in another part of the code so it tricked me and put me in confusion. See the screenshots in the initial post.


Document requirements in this repo

We have had multiple discussions about how this technology should look, which are written down in various distributed documents. We need to move them to this repo (on the wiki, I guess) to consolidate and let people discuss and edit them.

See this document https://docs.google.com/document/d/131iPywFfon1YbjQsBeYAgbZ586JsEnNrcq6gFHYhNrA/edit#heading=h.sde47s2bqq5g


Don't reject the activate command if the restoration is in progress

A new field volume.Status.IsStandby is introduced for this feature.
Longhorn #1006

Wait for the manual test passed

Just make sure we still able to pull from the backup store one last time before detaching the volume.

Manual test, DR volume integration tests and core integration tests passed.

https://github.com/longhorn/longhorn/issues/1006


Keep getting MissingPluginException

So I went to my src/main/Kotlin and made a new Kotlin script. It implements the FlutterPlugin and MethodCallHandler. Now when I try to invoke it I get MissingPluginException. I believe this has to be with registering the script. All the examples I have seen is on how to register a plugin but how to register a custom native script that is on your app? Do I manually open the GeneratedPluginRegistrant and add my script?
Any help is appreciated!

@jonahwilliams Jonah any thoughts on this? Sadly I can’t do anything till I fix this

Hi @DeadlyMissile
you may want to look at the documentation.
This platform is not meant for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


[LifetimeCompletion] Removed "with leaks" mode.

Now that the two known issues which resulted in invalid SIL being provided to lifetime completion have been addressed, tighten up the completion done on the availability boundary not to allow leaks.

@swift-ci please test


Settings controller dismiss delays when choosing distance based sorting

sometimes everything seems to freeze as well, very odd

sometimes everything seems to freeze as well, very odd

Still happens, damn...


Add test coverage to Url class

https://codeclimate.com/github/carbontwelve/tapestry/coverage/59032cf946f831000102d93b

This is solved by pull #176


ci: Add custom size labels to PR workflow

Pull Request
Description
This change enhances the pull request labelling process in the GitHub Actions workflow. It adds a name to the labeller step for improved readability and introduces size labelling for pull requests.
The size labelling action is configured with custom thresholds:

XS: 0-19 lines
S: 20-49 lines
M: 50-199 lines
L: 200-499 lines
XL: 500-999 lines
XXL: 1000+ lines

These updates will provide more detailed and automated categorisation of pull requests, helping to streamline the review process.
fixes #140

#139  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @JackPlowman and the rest of your teammates on  Graphite

Merge activity

Oct 27, 3:48 AM EDT: A user merged this pull request with Graphite.


add connPoolSize limit

Summary by CodeRabbit

New Features

Introduced a new configuration option for Redis connections, allowing users to specify the connection pool size.

Bug Fixes

Corrected the YAML tag for the TTL field in the MethodCacheConfig struct for improved serialization.

Will perform a test using this and share results.

I have tested this in staging. The feature works and it improves the batched rpc response times, but not enough to be comparable to cached-eth-rpc.


Up and Down Movements in Space

Add functionality to allow up and down movements in the space (in addition to current left/right and forward/backward movements).

consider this thread: https://github.com/c-frame/aframe-extras/issues/149

fixed by https://github.com/Bebb-Protocol-and-Apps/PWS/pull/95


fix: defaults in rebaser config overwrite local settings

Missed some defaults in my earlier PR for the rebase config.

bors merge


Change Igor's acc.

This issue was migrated from an old repository: https://github.com/CiscoDevNet/catalystwan/pull/117


Update golang to 1.17 and dependencies

go mod edit -go=1.17 && \
go get all && \
go mod tidy && \
go mod vendor

and updated golang to 1.17

in Makefile
in .github/go/Dockerfile

@hazcod any idea why the build is failing?

@msladek FYI it's now a common practice to not rely on vendor/ anymore but the local go mod cache.
Hence me removing it from git a couple of months ago.

@hazcod I see, but why then is there still a vendor dir on the master branch? shouldn't it be removed from the repo?

@msladek Fair point, not sure where I forgot to push. Thanks!


feat: Setup Dockerfile (monorepo)

Description

Include new unit tests of  https://github.com/forbole/big-dipper-2.0-cosmos/pull/1044
Move duplicated components / screens into ui package
Update web socket connection, try to fix https://github.com/forbole/big-dipper-2.0-cosmos/issues/1045
Various bug fixes
Setup docker images

Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow-up issues.
I have...

[X] ran linting
[X] wrote tests where necessary
[X] included the correct type prefix in the PR title
[X] targeted the correct branch
[X] provided a link to the relevant issue or specification
[X] reviewed "Files changed" and left comments if necessary
[X] confirmed all CI checks have passed
[X] added an entry to the CHANGELOG.md file

hey @teamchong I ran:
corepack enable && yarn
yarn turbo run build --filter=web-agoric
yarn dev:web --filter web-agoric

and access localhost:3000/agoric but I was forwarded to localhost:3000 and showing desmos.  Did I miss anything or there's something to be fixed? thx

hey @teamchong I ran:
corepack enable && yarn
yarn turbo run build --filter=web-agoric
yarn dev:web --filter web-agoric

and access localhost:3000/agoric but I was forwarded to localhost:3000 and showing desmos. Did I miss anything or there's something to be fixed? thx

try
corepack enable && yarn
yarn dev --filter web-agoric


Merge develop into sane-add-plugin #2

Merge develop into sane-add-plugin
Pending conflicts:
CONFLICT (content): Merge conflict in cms/static/cms/js/modules/cms.plugins.js
CONFLICT (content): Merge conflict in cms/static/cms/js/dist/bundle.toolbar.min.js
CONFLICT (content): Merge conflict in cms/static/cms/js/dist/bundle.admin.pagetree.min.js
CONFLICT (content): Merge conflict in cms/static/cms/js/dist/bundle.admin.base.min.js
Fixed Conflicts:
CONFLICT (content): Merge conflict in cms/tests/test_cache.py
@vxsx all yours :smiling_imp:

@czpython

also the branch will require additional code to deal with some of the stuff we had before

Changes Unknown when pulling eec6bb122f078e3706e5e3514ae2eec0fcd7832d on czpython:merge/sane-add-plugin-2 into ** on divio:sane-add-plugin**.

Changes Unknown when pulling 77cab9109162726f88b33e02685256bb787534f0 on czpython:merge/sane-add-plugin-2 into ** on divio:sane-add-plugin**.

Changes Unknown when pulling 2c8fd6ce2d866718db7027822e72eca66154db9b on czpython:merge/sane-add-plugin-2 into ** on divio:sane-add-plugin**.


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v4.9 to before v5.16.6",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=b5503b994ed5ed8dbfe821317e7b5b38acb065c5",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8fbdf8c8b8ab82beab882175157650452c46493e"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "b5503b994ed5ed8dbfe821317e7b5b38acb065c5",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "8fbdf8c8b8ab82beab882175157650452c46493e",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "net/mlx5e: Avoid field-overflowing memcpy()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.16.6 by commit 8fbdf8c8b8ab82beab882175157650452c46493e, it was introduced in version v4.9 by commit b5503b994ed5ed8dbfe821317e7b5b38acb065c5. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2022-1000640


Adds  'm365 spo homesite list'. Closes #6091

Closes #6492

New Command = Five Files
If your pull request contains the changes for a new command, it should contain five changed files.
For example, a pull request for adding 'teams tab add' command, would include...

src/m365/spo/commands.ts
src/m365/spo/commands/homesite/homesite-list.ts
src/m365/spo/commands/homesite/homesite-list.spec.ts
docs/src/config/sidebars.js
docs/docs/cmd/spo/homesite/homesite-list.mdx

Thank you @reshmee011, we'll have a look at it soon.

@milanholemans : Thanks so much for meticulous review:)

@reshmee011, is this PR ready for review? If so, can you convert it from draft to ready for review, please?

@reshmee011 FYI, I just noticed that the command naming might not be ideal. I'll have to put this PR on hold until #6502 has been approved/declined.

@milanholemans : no worries, I will wait for the outcome of #6502 before I progress on the outstanding issues related to homesite.

Hi, @reshmee011 #6502 has been approved. Could you rename the command and move it under the spo tenant umbrella, please? Sorry for the last-minute turnaround.

@milanholemans : oops thanks so much for noticing the oversights.

Merged manually, thanks!

Thanks @milanholemans for all your help to getting it merged :)


add a linter

✖ 1214 problems (1214 errors, 0 warnings)

Nice, lot of work to do, but it will be ok :D

Yeah, just gnaw at them slowly :)
The linter seems configured well now

Nice, I'll start fixing errors :)


upon using the reset spawn and goal menu item, the clock disappears

Observed behavior:

If you use the 'randomize spawn and goal' button without having completed a speedrun, the timer does not disappear, but it does not reset when it should.
If you complete a speedrun and the timer is stopped, both using the 'randomize spawn and goal' button or quitting to the title screen and starting a new run causes the timer to not appear.


Ability to restart Homebridge service without having to delete Accessories and Persist folder?

Hello,
I know that there is this issue when Homebridge stops running due to either power failure or manual stoppage (Ctrl+C) we have to delete those two folders before we can run Homebridge again.
Is there anyway to circumvent this because everything my board goes down I have to restart the Homebridge service, which I think is fine. Even up till deleting the two folders is fine but on my iPhone, I have to re-add the Homebridge again via QR or the given code otherwise all the accessories just report 'no response'. I have to plug in a monitor to look for the code or to scan the QR again.
Really appreciate any of your replies. Thank you.

You don't have to delete your persist and accessories folders to restart homebridge.
To make it run headless and 24/7 after a reboot is to do the following:
sudo npm I -g pm2
 pm2 startup
pm2 startup will print out a large string, copy and paste it.
then do:
pm2 start homebridge
finally do
pm2 save
PM2 Link NPM

I will try that part out. I still have some other issues with regards to Homebridge I have to settle before coming to this step.
Thank you for your reply. It will definitely come in useful!

@dcedjiayi What other kinds of issues? I can try to help out where I can.

HI @iRayanKhan I am making progress on the other problems that I am facing. There is one thing that I need clarification. It is with accessory reachability. What does 'accessory.reachbility' do? Does it send like some sort of signal to the accessory to see if it is available or...?


TypeScript client test to manage RPC server

For reference, server_test.cpp can optionally startup the C++ RPC server when it starts up, then shutdown the server when it's done.  Currently the TS client relies on the server to already be up and listening when it comes up.  This issue is to enhance the TS client so that it can manage the lifetime of the RPC server (bringing it up and down as appropriate on a configurable port or Unix domain socket).  Ideally the choice of RPC server (e.g., the C++ reference server or the Scala production server) should also be configurable.  This Enhancement will streamline integrations and CI testing.

Closed by https://github.com/ctc-oss/omega-edit/pull/377


about section link issue

When the user is in /blogs route and clicks on 'about' link, the route doesn't change.

can i work on it please label it as hacktoberfest

@Abhishek3223 bro this repo has the hacktoberfest label so it would be accepted as a valid pr if it gets accepted by the maintainer.

can i work on this?


Need a simple sample

I am sorry for bothering you, but finally I found most suitable plugin for my project. I have tried yours but still getting problem. Can you make a simple sample scene that only show this web browser in a plane without oculus integration, I mean by using the camera instead. I will be really grateful if you could help me...I have been struggling with my diploma final project.
:(   :(

It's only possible with the oculus integration, sorry.


fix invalid container names in examples.

Azure Blob Storage container names are not allowed to have upper case letters
Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[x] Other, please clarify

Fix for invalid example values

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
no api change - change only in example values

When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
as soon as convenient

If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[x] No, no need to refresh for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[x] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

@anuchandy could you take a look?

@anuchandy could you please take a look?

@anuchandy could you please take a look?

@JeffreyRichter - thanks for approving the PR. I am not authorized to merge the pull request - can you do so please?

@anuchandy can merge


Add html attributes into stacks hook

Hey, me again.
During my i18n plugin journey, I was digging into the best way to implement the dynamic lang attribute.
As discussed in #87, the current way to do it is to edit htmlString in a compileHtml hook by overwriting and disabling the hook in elder.config.js.
So I currently have 2 choices:

let the user add it himself if he wants to. It's the way I go for now. but I feel like it should be manage by the i18n plugin.
an option to overwriting htmlString by the plugin. However, the user will still need to disabled the elder hook, and if I understand proberly, couldn't use this hook anymore without rewriting the entire htmlString an disabled this i18n option.

Currently working with the stacks hooks to add some elements to headStack, I was wondering if we can add an htmlAttributesStack in the same way the headStack exist. This way, we can manage a dynamic lang attribute while letting the user adding other html attributes , and still overwriting compileHtml if he wants to without breaking anything.
🔜 If it's something that seems relevant to you, I'm ok to make a PR with this feature. (I'm curious to see how elderjs work internally btw)
❓In this context, maybe we should re-consider adding a lang option in elder.config.js (but keep en by default) as it would become "dynamic" in a stack of attributes anyway; it will also feel less arbitrary (in the case of a non-english website).
❓Also, if we do that, should we also add a bodyAttributesStack to cover most of use cases to let plugins adding data while keeping the default compileHtml hook most of the time ?

@kiuKisas This sounds like a good approach. Let's just make sure we cover the new functionality with tests and documented. I'd also add the least amount of new functionality as possible because each change we make further extends the api surface.
Notes to help guide you on the PR.

Adding a stack is a bit involved. You'll need to add an empty array in Page.ts, you'll need to run page.htmlAttributesStack = page.processStack("htmlAttributesStack") near where the other stacks are processed (that creates a string out of the stack), and then make sure that htmlAttributesStack is available in the props and mutable arrays of the hooks it should be edited on.
In the internal hooks file, we'll need to update elderCompileHtml to use htmlAttributesStack
Adding lang to elder.config.js. See validations.ts. Note that the label field in that file is used to generate the docs. You can set the default to en there. You'll also need to push this value on to the htmlAttributesStack in the Page.ts file.


SequelizeDatabaseError: column Provider.name does not exist

Describe the bug
Cannot sort of virtual columns. This is either a bug in sequlize or unsupported use case. I will be updating a similar issue is sequalize that appears to be related. https://github.com/sequelize/sequelize/issues/10983
Installed libraries and their versions
"dependencies": {
    "admin-bro": "^2.2.12",
    "admin-bro-expressjs": "^2.0.5",
    "admin-bro-sequelizejs": "^0.4.1",
    "aws-sdk": "^2.666.0",
    "cron": "^1.7.2",
    "cron-parser": "^2.13.0",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "express-fileupload": "^1.1.7-alpha.3",
    "express-formidable": "^1.2.0",
    "fs-extra": "^8.1.0",
    "json2csv": "^4.5.4",
    "mirth-api": "^0.0.5",
    "moment": "^2.24.0",
    "morgan": "^1.10.0",
    "node-fetch": "^2.6.0",
    "nodemailer": "^6.3.1",
    "pg": "^7.14.0",
    "sequelize": "^5.21.2",
    "swagger-jsdoc": "^4.0.0",
    "vm2": "^3.8.4"
  }

To Reproduce
Steps to reproduce the behavior:

Create a model with a virtual field, example

/* jshint indent: 1 */

module.exports = (sequelize, DataTypes) => {
    let Provider = sequelize.define('Provider',
        {
            nationalProviderIdentifier: {
                type: DataTypes.INTEGER,
                allowNull: false,
                unique: true
            },
            familyName: {
                type: DataTypes.STRING,
                allowNull: false
            },
            givenName: {
                type: DataTypes.STRING,
                allowNull: false
            },
            additionalName: {
                type: DataTypes.STRING,
                allowNull: false,
                defaultValue: ''
            },
            name: {
                // type: DataTypes.VIRTUAL(DataTypes.STRING, ['givenName', 'familyName', 'additionalName']),
                type: DataTypes.VIRTUAL,
                get: function() {
                    return `${this.getDataValue('givenName')} ${this.getDataValue('familyName')} ${this.getDataValue('additionalName')}`.trim()
                }
            },
        }
    )

    return Provider
}

Open Admin Bro to the resource

Expected behavior
Throw an error to the effect of Cannot sort on VIRTUAL Datatype "${sortBy}"! You can provide a different sort by field to avoid this issue, see: https://adminbro.com/ResourceOptions.html#sort
Could sort by the primary key when the default sort by key is virtual but that could create an issue where it's not sorting as expect and the user has no clue why.
Additional context
Fix: https://github.com/SoftwareBrothers/admin-bro-sequelizejs/blob/master/src/resource.js
...
const { Op, DataTypes } = require('sequelize')
...
    const { direction, sortBy } = sort
    if (this.SequelizeModel.fieldRawAttributesMap[sortBy].type instanceof DataTypes.VIRTUAL) {
        throw new Error(`Cannot sort on VIRTUAL Datatype "${sortBy}" on resource "${this.SequelizeModel.name}"! You can provide a different sort by field to avoid this issue, see: https://adminbro.com/ResourceOptions.html#sort`)
    }
    const sequelizeObjects = await this.SequelizeModel
      .findAll({
        where: convertFilter(filter),
        limit,
        offset,
        order: [[sortBy, (direction || 'asc').toUpperCase()]],
      })

A related issue is Admin-Bro
api-controller.js
    const sortBy = decorated.options && decorated.options.sort && decorated.options.sort.sortBy || titlePropertyName
    const records = await resource.find(filter, {
      limit: 50,
      sort: {
        //sortBy: titlePropertyName,
        sortBy,
        direction: 'asc'
      }
    });

I'm taking a look at adding tests now. Hopefully, I will be able to add them to a pull request today.

The fix only partially works. If a user clicks on a virtual column field then the fix fails as in the backend throws the expected error and the frontend fails to load.

This is turning out the be a deeply complex issue.
module.exports = (sequelize, DataTypes) => {
    let Provider = sequelize.define('Provider',
        {
            nationalProviderIdentifier: {
                type: DataTypes.STRING,
                allowNull: false,
                unique: true
            },
            familyName: {
                type: DataTypes.STRING,
                allowNull: false
            },
            givenName: {
                type: DataTypes.STRING,
                allowNull: false
            },
            additionalName: {
                type: DataTypes.STRING,
                allowNull: false,
                defaultValue: ''
            },
            name: {
                // type: DataTypes.VIRTUAL(DataTypes.STRING, ['givenName', 'familyName', 'additionalName']),
                type: DataTypes.STRING,
                get: function () {
                    return `${this.getDataValue('familyName')}, ${this.getDataValue('givenName')} ${this.getDataValue('additionalName')}`.trim()
                },
                set: function (value) {

                }
            },

            // name: {
            //     // type: DataTypes.VIRTUAL(DataTypes.STRING, ['givenName', 'familyName', 'additionalName']),
            //     type: DataTypes.VIRTUAL,
            //     get: function () {
            //         return `${this.getDataValue('familyName')}, ${this.getDataValue('givenName')} ${this.getDataValue('additionalName')}`.trim()
            //     }
            // },
        }
    )

    Provider.adminBroConfig = {
        resource: Provider,
        options: {
            // sort: {sortBy: 'familyName'},
            editProperties: ['nationalProviderIdentifier', 'familyName', 'givenName', 'additionalName'],
            listProperties: ['nationalProviderIdentifier', 'name'],
            properties: {
                name: {isDisabled: true},
            }
        },
    }
    return Provider
}

The comment out code is the correct way to create a virtual column, however, this creates all sorts of issues that are not easily worked around. Instead, I created a real column "name" that is effectively virtual and resolves all the issues to the best of my knowledge.
At this point, I don't have a good fix beyond this ugly hack. I think to truly fix this it will take an overhaul of how admin-bro-sequelizejs/admin-bro sorts. I will take a look at this latter as there another issue. When sorting associate columns it does not sort as expected. For example, when sorting on name column above in the associate table it seems to sort by id and not alphabetical. I suspect this might be a sequlize issue but don't know at this point.

Any updates on this?
We are facing the same issue, as we want to show a nice string in a foreign key select instead of an id.

I think your error comes from the fact that name field is used by default for sorting:
https://github.com/SoftwareBrothers/adminjs/blob/a0d2a17d55af39e03cf3b3f5ab8cd5c09bcaaeb6/src/backend/services/sort-setter/sort-setter.ts#L40
https://github.com/SoftwareBrothers/adminjs/blob/926799a64bc9ca40b7e763dc2adf2b4c73f3f42f/src/backend/decorators/resource/resource-decorator.ts#L251
which is basically a title property. You can
a) specify sort config in your resource with a different sortBy that is not virtual: https://docs.adminjs.co/ResourceOptions.html#sort
b) set isTitle: false for name and set isTitle: true to something else (https://docs.adminjs.co/PropertyOptions.html#isTitle)


[LIVY-752][THRIFT] Fix implementation of limits on connections.

What changes were proposed in this pull request?
LivyThriftSessionManager keeps a ConcurrentHashMap[String, AtomicLong] named connectionsCount to track the number of connections per user, etc. The incrementConnectionsCount and decrementConnectionsCount methods in LivyThriftSessionManager check that connectionsCount does not contain a key (instead of contains the key) before getting the value and incrementing or decrementing the count (leading to a NullPointerException). Even accounting for the incorrect condition, they do not use the ConcurrentHashMap correctly. There is a race -- a thread can get a count, find that it's within a limit, create a new session and then increment the count, while in the meantime, another thread could have incremented the count and so the limit is now actually exceeded.
We increment all relevant counts optimistically before creating a new session, check if any limits are violated, and if so, decrement all incremented counts.
How was this patch tested?
Tested by deploying the change on a cluster and setting livy.server.thrift.limit.connections.per.user. Verified that the number of connections reaches but does not exceed the limit.
Also, added basic unit tests that connection limits are enforced.

Codecov Report

Merging #284 into master will increase coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #284      +/-   ##
============================================
+ Coverage      68.2%   68.22%   +0.02%
+ Complexity      965      964       -1
============================================
  Files           104      104
  Lines          5951     5952       +1
  Branches        900      900
============================================
+ Hits           4059     4061       +2
+ Misses         1314     1311       -3
- Partials        578      580       +2

Impacted Files
Coverage Δ
Complexity Δ

...c/main/scala/org/apache/livy/repl/ReplDriver.scala
30.76% <0%> (-2.57%)
7% <0%> (ø)

...ain/java/org/apache/livy/rsc/driver/RSCDriver.java
80% <0%> (-0.84%)
45% <0%> (-1%)

...va/org/apache/livy/client/http/LivyConnection.java
82.27% <0%> (+0.22%)
15% <0%> (ø)
:arrow_down:

...main/scala/org/apache/livy/server/LivyServer.scala
33.48% <0%> (+0.44%)
11% <0%> (ø)
:arrow_down:

...ain/scala/org/apache/livy/utils/SparkYarnApp.scala
73.75% <0%> (+1.87%)
40% <0%> (ø)
:arrow_down:

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 3a26856...3261a38. Read the comment docs.

I think the helper withinLimits() is no longer used.
without testing for concurrency, could you at least add a basic unit test that the limits are enforced, say on anyViolations()?  (given that the logic was entirely backwards before, a unit test seems like it would help here.)

those things aside, the change itself lgtm

I think the helper withinLimits() is no longer used.

Thanks for pointing that out. I'll remove it.

without testing for concurrency, could you at least add a basic unit test that the limits are enforced, say on anyViolations()? (given that the logic was entirely backwards before, a unit test seems like it would help here.)

Yes, it would be helpful to have a basic unit test for that.

@mgaido91 @jerryshao can you please review?

I adopted Imran's suggestion for rewriting incrementConnections.
I also added a test case for multiple connection limits being violated; the error message is for the first limit that we check.
I am passing on additional nice-to-have tests. There is always room for improvement for the tests. This can be an area for further contributions, possibly from new contributors!

@mgaido91 can you merge this now? Thanks.

Merged to master. Thanks.


🚀 Feature: Add email recipients more efficiently

🔖 Feature description
In Pingvin, it is counterproductive to add email recipents: you must type an email address, and click on the "autosuggestion" dropdown (which doesn't suggest anything) in order to add a single email address.
There are two major ways I can think of to improve this part:

Use Gmail-esque email form, which automatically submit an email address when typing the , (comma) symbol, so users can manually type in multiple email addresses without clicking the dropdown box all the time.
Use type="email" in the email form, and let the browser auto-detects a valid email address, and submit the form if the browser allows to.

🎤 Pitch
I frequently use Pingvin to share files across my devices, and send an email notification to my self-hosted mailbox as a reminder. However, I find that adding email recipients in Pingvin can be improved with this small tweak, which can be useful for other Pingvin users, too.

hey where is this located i cant find this all i see is this

@stonith404  this was resolved can we close this for other contributors/for less confusion Thanks


Not null-terminated strings in decompiler view

Hi,
I am working on a couple of scripts to analyze golang binaries. I am trying to recover strings in the binary. As these strings are not null terminated I use the location and length combination to find and define the strings. When I define a string with a specific length, in the decompiler view a string will be visible instead of the address of the data, but it will look for the null termination, so a much longer string is visible than the one I defined. Is there a way to tell the decompiler to use only the defined string with a specific length?
Thank you for your help.

It depends on how you create your string in Ghidra.  There are both null terminated string types as well as fixed length string types.
Are you specifying a fixed length data type?

Thank you for your answer.
I used the createAsciiString(Address address, int length) method to create the strings.

Sounds like you are creating the string correctly.  If you hover over the data element in the listing window, the popup window should specifically state fixed or null term.
As far as the decompiler goes, I'll have to leave that to others.

Yes, it looks good in the listing view, but ugly in the decompiler view. You can see it on the screenshots below.

what is the prototype of runtime.concatstring2?

Unfortunately Ghidra cannot recover golang functions correctly.
It looks like this now:
void runtime.concatstring2(undefined param_1)
It should be the following according to golang documentation:
func concatstring2(buf *tmpBuf, a [2]string) string
But in the example above we can see that a string parameter has two values, the actual data and the length. That's why it has five input parameters.
I just couldn't figure out a way to tell the decompiler to show only the string with the specific length that I set with createAsciiString(Address address, int length) method .

The issue of non-null terminated strings in the decompiler is resolved for the upcoming 9.2 and is available currently in the master branch if your in a position to do your own build.

Hi,
it is great news. Thank you very much.

Can this issue be re-opened? The decompiler is still following string data after a fixed length char array in Ghidra 10.1.4.

Sure.
strs.exe is built in release from the provided source strs_src.zip (rustc 1.61.0 (fe5b13d68 2022-05-18)). I can provide the binary upon request.
use std::io::{self, Write};

fn main() -> io::Result<()> {
    let mut stdout = io::stdout().lock();

    stdout.write_all(b"Hello, world!")?;
    stdout.write_all(b"I'm a string!")?;
    stdout.write_all(b"I'm another string")?;
    stdout.write_all(b"Boy I love strings")?;

    Ok(())
}

In the built binary, the main strings are continguous at RVA 0x1e3b0. The function at RVA 0x1010 is the main function which references these (Ghidra has trouble detecting this function during auto analysis). If the contiguous string is cleared, then a char array of 13 bytes formed in its place (the size of the first "Hello, world!" string), the decompilation of main continues to show the full string as the parameter even after using the "Push at any time to trigger a re-decompile" button.
Additionally, when loading the PDB, Ghidra assigns the type void func(void) to write_all, which prevents the strings in main from appearing in the decompilation; either preventing the PDB load, or fixing the write_all call to take the string as the second parameter restores the strings in the decompiled view.

Thanks we'll take a look.


[TextField] doesn't update deafultValue on rerender

If TextField gets its defaultValue from a state dependent value, and will rerender, the TextField won't get updated with the new value.
<TextField
    disabled={this.state.disabledEditMode}
    defaultValue={this.state.something} />

Doesn't matter, found out that value attribute does what I want.


worker节点加入集群操作一直卡住

`[root@localhost ~]# ./sealos init --master <IP_ADDRESS>     --master <IP_ADDRESS>     --node <IP_ADDRESS>     --node <IP_ADDRESS>     --user root     --passwd 5     --version v1.16.2     --pkg-url /root/kube1.16.2.tar.gz
2019-11-09 07:50:18 [CRIT] [github.com/fanux/sealos/install/check.go:21] [<IP_ADDRESS>]  ------------ check ok
2019-11-09 07:50:18 [CRIT] [github.com/fanux/sealos/install/check.go:22] [<IP_ADDRESS>]  ------------ session[0xc00016e000]
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:21] [<IP_ADDRESS>]  ------------ check ok
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:22] [<IP_ADDRESS>]  ------------ session[0xc0000b2480]
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:21] [<IP_ADDRESS>]  ------------ check ok
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:22] [<IP_ADDRESS>]  ------------ session[0xc00016e090]
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:21] [<IP_ADDRESS>]  ------------ check ok
2019-11-09 07:50:19 [CRIT] [github.com/fanux/sealos/install/check.go:22] [<IP_ADDRESS>]  ------------ session[0xc00016e120]
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/print.go:13]
[globals]sealos config is:  {"Hosts":["<IP_ADDRESS>","<IP_ADDRESS>","<IP_ADDRESS>","<IP_ADDRESS>"]}
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:320] [<IP_ADDRESS>]please wait for tar zxvf exec
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:320] [<IP_ADDRESS>]please wait for tar zxvf exec
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : ls -l /root | grep kube1.16.2.tar.gz | wc -l
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : ls -l /root | grep kube1.16.2.tar.gz | wc -l
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:320] [<IP_ADDRESS>]please wait for tar zxvf exec
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : ls -l /root | grep kube1.16.2.tar.gz | wc -l
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:320] [<IP_ADDRESS>]please wait for tar zxvf exec
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : ls -l /root | grep kube1.16.2.tar.gz | wc -l
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: 1
2019-11-09 07:50:19 [WARN] [github.com/fanux/sealos/install/utils.go:322] [<IP_ADDRESS>]SendPackage: file is exist
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root && rm -rf kube && tar zxvf kube1.16.2.tar.gz
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: 1
2019-11-09 07:50:19 [WARN] [github.com/fanux/sealos/install/utils.go:322] [<IP_ADDRESS>]SendPackage: file is exist
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root && rm -rf kube && tar zxvf kube1.16.2.tar.gz
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: 1
2019-11-09 07:50:19 [WARN] [github.com/fanux/sealos/install/utils.go:322] [<IP_ADDRESS>]SendPackage: file is exist
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root && rm -rf kube && tar zxvf kube1.16.2.tar.gz
2019-11-09 07:50:19 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: 1
2019-11-09 07:50:19 [WARN] [github.com/fanux/sealos/install/utils.go:322] [<IP_ADDRESS>]SendPackage: file is exist
2019-11-09 07:50:19 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root && rm -rf kube && tar zxvf kube1.16.2.tar.gz
2019-11-09 07:50:39 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: kube/
kube/shell/
kube/shell/init.sh
kube/shell/master.sh
kube/shell/docker.sh
kube/README.md
kube/bin/
kube/bin/kubelet
kube/bin/sealos
kube/bin/kubectl
kube/bin/crictl
kube/bin/kubeadm
kube/bin/kubelet-pre-start.sh
kube/conf/
kube/conf/docker.service
kube/conf/kubeadm.yaml
kube/conf/kubelet.service
kube/conf/calico.yaml
kube/conf/10-kubeadm.conf
kube/conf/net/
kube/conf/net/calico.yaml
kube/docker/
kube/docker/docker.tgz
kube/docker/README.md
kube/images/
kube/images/images.tar
kube/images/README.md
2019-11-09 07:50:39 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root/kube/shell && sh init.sh
2019-11-09 07:50:39 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: kube/
kube/shell/
kube/shell/init.sh
kube/shell/master.sh
kube/shell/docker.sh
kube/README.md
kube/bin/
kube/bin/kubelet
kube/bin/sealos
kube/bin/kubectl
kube/bin/crictl
kube/bin/kubeadm
kube/bin/kubelet-pre-start.sh
kube/conf/
kube/conf/docker.service
kube/conf/kubeadm.yaml
kube/conf/kubelet.service
kube/conf/calico.yaml
kube/conf/10-kubeadm.conf
kube/conf/net/
kube/conf/net/calico.yaml
kube/docker/
kube/docker/docker.tgz
kube/docker/README.md
kube/images/
kube/images/images.tar
kube/images/README.md
2019-11-09 07:50:39 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root/kube/shell && sh init.sh
2019-11-09 07:50:39 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: kube/
kube/shell/
kube/shell/init.sh
kube/shell/master.sh
kube/shell/docker.sh
kube/README.md
kube/bin/
kube/bin/kubelet
kube/bin/sealos
kube/bin/kubectl
kube/bin/crictl
kube/bin/kubeadm
kube/bin/kubelet-pre-start.sh
kube/conf/
kube/conf/docker.service
kube/conf/kubeadm.yaml
kube/conf/kubelet.service
kube/conf/calico.yaml
kube/conf/10-kubeadm.conf
kube/conf/net/
kube/conf/net/calico.yaml
kube/docker/
kube/docker/docker.tgz
kube/docker/README.md
kube/images/
kube/images/images.tar
kube/images/README.md
2019-11-09 07:50:39 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root/kube/shell && sh init.sh
2019-11-09 07:50:40 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: kube/
kube/shell/
kube/shell/init.sh
kube/shell/master.sh
kube/shell/docker.sh
kube/README.md
kube/bin/
kube/bin/kubelet
kube/bin/sealos
kube/bin/kubectl
kube/bin/crictl
kube/bin/kubeadm
kube/bin/kubelet-pre-start.sh
kube/conf/
kube/conf/docker.service
kube/conf/kubeadm.yaml
kube/conf/kubelet.service
kube/conf/calico.yaml
kube/conf/10-kubeadm.conf
kube/conf/net/
kube/conf/net/calico.yaml
kube/docker/
kube/docker/docker.tgz
kube/docker/README.md
kube/images/
kube/images/images.tar
kube/images/README.md
2019-11-09 07:50:40 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : cd /root/kube/shell && sh init.sh
2019-11-09 07:50:58 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: * Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
Applying /etc/sysctl.d/99-sysctl.conf ...
Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
Loaded image: calico/kube-controllers:v3.8.2
Loaded image: calico/pod2daemon-flexvol:v3.8.2
Loaded image: fanux/lvscare:latest
Loaded image: k8s.gcr.io/kube-proxy:v1.16.2
Loaded image: k8s.gcr.io/kube-scheduler:v1.16.2
Loaded image: calico/node:v3.8.2
Loaded image: calico/cni:v3.8.2
Loaded image: k8s.gcr.io/pause:3.1
Loaded image: k8s.gcr.io/kube-controller-manager:v1.16.2
Loaded image: k8s.gcr.io/kube-apiserver:v1.16.2
Loaded image: k8s.gcr.io/etcd:3.3.15-0
Loaded image: k8s.gcr.io/coredns:1.6.2
driver is cgroupfs

2019-11-09 07:50:58 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: * Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
Applying /etc/sysctl.d/99-sysctl.conf ...
Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
Loaded image: calico/kube-controllers:v3.8.2
Loaded image: calico/pod2daemon-flexvol:v3.8.2
Loaded image: fanux/lvscare:latest
Loaded image: k8s.gcr.io/kube-proxy:v1.16.2
Loaded image: k8s.gcr.io/kube-scheduler:v1.16.2
Loaded image: calico/node:v3.8.2
Loaded image: calico/cni:v3.8.2
Loaded image: k8s.gcr.io/pause:3.1
Loaded image: k8s.gcr.io/kube-controller-manager:v1.16.2
Loaded image: k8s.gcr.io/kube-apiserver:v1.16.2
Loaded image: k8s.gcr.io/etcd:3.3.15-0
Loaded image: k8s.gcr.io/coredns:1.6.2
driver is cgroupfs

2019-11-09 07:50:59 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: * Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
Applying /etc/sysctl.d/99-sysctl.conf ...
Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
Loaded image: calico/kube-controllers:v3.8.2
Loaded image: calico/pod2daemon-flexvol:v3.8.2
Loaded image: fanux/lvscare:latest
Loaded image: k8s.gcr.io/kube-proxy:v1.16.2
Loaded image: k8s.gcr.io/kube-scheduler:v1.16.2
Loaded image: calico/node:v3.8.2
Loaded image: calico/cni:v3.8.2
Loaded image: k8s.gcr.io/pause:3.1
Loaded image: k8s.gcr.io/kube-controller-manager:v1.16.2
Loaded image: k8s.gcr.io/kube-apiserver:v1.16.2
Loaded image: k8s.gcr.io/etcd:3.3.15-0
Loaded image: k8s.gcr.io/coredns:1.6.2
driver is cgroupfs

2019-11-09 07:50:59 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: * Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
Applying /etc/sysctl.d/99-sysctl.conf ...
Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
Loaded image: calico/kube-controllers:v3.8.2
Loaded image: calico/pod2daemon-flexvol:v3.8.2
Loaded image: fanux/lvscare:latest
Loaded image: k8s.gcr.io/kube-proxy:v1.16.2
Loaded image: k8s.gcr.io/kube-scheduler:v1.16.2
Loaded image: calico/node:v3.8.2
Loaded image: calico/cni:v3.8.2
Loaded image: k8s.gcr.io/pause:3.1
Loaded image: k8s.gcr.io/kube-controller-manager:v1.16.2
Loaded image: k8s.gcr.io/kube-apiserver:v1.16.2
Loaded image: k8s.gcr.io/etcd:3.3.15-0
Loaded image: k8s.gcr.io/coredns:1.6.2
driver is cgroupfs

2019-11-09 07:50:59 [DEBG] [github.com/fanux/sealos/install/print.go:20] ==>SendPackage
2019-11-09 07:50:59 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : echo "apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: v1.16.2
controlPlaneEndpoint: "apiserver.cluster.local:6443"
networking:
podSubnet: <IP_ADDRESS>/10
apiServer:
certSANs:
- <IP_ADDRESS>
- apiserver.cluster.local
- <IP_ADDRESS>
- <IP_ADDRESS>
- <IP_ADDRESS>
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
mode: "ipvs"
ipvs:
excludeCIDRs:
- "<IP_ADDRESS>/32"" > /root/kubeadm-config.yaml
2019-11-09 07:51:00 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:51:00 [DEBG] [github.com/fanux/sealos/install/print.go:20] ==>SendPackage==>KubeadmConfigInstall
2019-11-09 07:51:00 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : echo <IP_ADDRESS> apiserver.cluster.local >> /etc/hosts
2019-11-09 07:51:01 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:51:01 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : kubeadm init --config=/root/kubeadm-config.yaml --upload-certs
2019-11-09 07:51:23 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: [init] Using Kubernetes version: v1.16.2
[preflight] Running pre-flight checks
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
[WARNING FileExisting-socat]: socat not found in system path
[preflight] Pulling images required for setting up a Kubernetes cluster
[preflight] This might take a minute or two, depending on the speed of your internet connection
[preflight] You can also perform this action in beforehand using 'kubeadm config images pull'
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Activating the kubelet service
[certs] Using certificateDir folder "/etc/kubernetes/pki"
[certs] Generating "ca" certificate and key
[certs] Generating "apiserver" certificate and key
[certs] apiserver serving cert is signed for DNS names [localhost.localdomain kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local apiserver.cluster.local apiserver.cluster.local] and IPs [<IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS>]
[certs] Generating "apiserver-kubelet-client" certificate and key
[certs] Generating "front-proxy-ca" certificate and key
[certs] Generating "front-proxy-client" certificate and key
[certs] Generating "etcd/ca" certificate and key
[certs] Generating "etcd/server" certificate and key
[certs] etcd/server serving cert is signed for DNS names [localhost.localdomain localhost] and IPs [<IP_ADDRESS> <IP_ADDRESS> ::1]
[certs] Generating "etcd/peer" certificate and key
[certs] etcd/peer serving cert is signed for DNS names [localhost.localdomain localhost] and IPs [<IP_ADDRESS> <IP_ADDRESS> ::1]
[certs] Generating "etcd/healthcheck-client" certificate and key
[certs] Generating "apiserver-etcd-client" certificate and key
[certs] Generating "sa" key and public key
[kubeconfig] Using kubeconfig folder "/etc/kubernetes"
[kubeconfig] Writing "admin.conf" kubeconfig file
[kubeconfig] Writing "kubelet.conf" kubeconfig file
[kubeconfig] Writing "controller-manager.conf" kubeconfig file
[kubeconfig] Writing "scheduler.conf" kubeconfig file
[control-plane] Using manifest folder "/etc/kubernetes/manifests"
[control-plane] Creating static Pod manifest for "kube-apiserver"
[control-plane] Creating static Pod manifest for "kube-controller-manager"
[control-plane] Creating static Pod manifest for "kube-scheduler"
[etcd] Creating static Pod manifest for local etcd in "/etc/kubernetes/manifests"
[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory "/etc/kubernetes/manifests". This can take up to 4m0s
[apiclient] All control plane components are healthy after 15.007533 seconds
[upload-config] Storing the configuration used in ConfigMap "kubeadm-config" in the "kube-system" Namespace
[kubelet] Creating a ConfigMap "kubelet-config-1.16" in namespace kube-system with the configuration for the kubelets in the cluster
[upload-certs] Storing the certificates in Secret "kubeadm-certs" in the "kube-system" Namespace
[upload-certs] Using certificate key:
f50f00732b88fad2791feab469729819dca870da916022923a84c0d1064acba2
[mark-control-plane] Marking the node localhost.localdomain as control-plane by adding the label "node-role.kubernetes.io/master=''"
[mark-control-plane] Marking the node localhost.localdomain as control-plane by adding the taints [node-role.kubernetes.io/master:NoSchedule]
[bootstrap-token] Using token: g8fcb0.j48c4th98rc07eba
[bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles
[bootstrap-token] configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials
[bootstrap-token] configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token
[bootstrap-token] configured RBAC rules to allow certificate rotation for all node client certificates in the cluster
[bootstrap-token] Creating the "cluster-info" ConfigMap in the "kube-public" namespace
[addons] Applied essential addon: CoreDNS
[addons] Applied essential addon: kube-proxy
Your Kubernetes control-plane has initialized successfully!
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
https://kubernetes.io/docs/concepts/cluster-administration/addons/
You can now join any number of the control-plane node running the following command on each as root:
kubeadm join apiserver.cluster.local:6443 --token g8fcb0.j48c4th98rc07eba
--discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7
--control-plane --certificate-key f50f00732b88fad2791feab469729819dca870da916022923a84c0d1064acba2
Please note that the certificate-key gives access to cluster sensitive data, keep it secret!
As a safeguard, uploaded-certs will be deleted in two hours; If necessary, you can use
"kubeadm init phase upload-certs --upload-certs" to reload certs afterward.
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join apiserver.cluster.local:6443 --token g8fcb0.j48c4th98rc07eba
--discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7
kubernetes HA install: https://github.com/fanux/sealos
www.sealyun.com
QQ group: 98488045
2019-11-09 07:51:23 [INFO] [github.com/fanux/sealos/install/sealos.go:84] [globals]join command is:  apiserver.cluster.local:6443 --token g8fcb0.j48c4th98rc07eba
--discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7
--control-plane --certificate-key f50f00732b88fad2791feab469729819dca870da916022923a84c0d1064acba2
2019-11-09 07:51:23 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : mkdir -p /root/.kube && cp /etc/kubernetes/admin.conf /root/.kube/config
2019-11-09 07:51:24 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:51:24 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : kubectl apply -f /root/kube/conf/net/calico.yaml || true
2019-11-09 07:51:25 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: configmap/calico-config created
customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org created
clusterrole.rbac.authorization.k8s.io/calico-kube-controllers created
clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllers created
clusterrole.rbac.authorization.k8s.io/calico-node created
clusterrolebinding.rbac.authorization.k8s.io/calico-node created
daemonset.apps/calico-node created
serviceaccount/calico-node created
deployment.apps/calico-kube-controllers created
serviceaccount/calico-kube-controllers created
2019-11-09 07:51:25 [DEBG] [github.com/fanux/sealos/install/print.go:20] ==>SendPackage==>KubeadmConfigInstall==>InstallMaster0
2019-11-09 07:51:25 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : echo <IP_ADDRESS> apiserver.cluster.local >> /etc/hosts
2019-11-09 07:51:26 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:51:26 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : kubeadm join <IP_ADDRESS>:6443 --token g8fcb0.j48c4th98rc07eba --discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7 --control-plane --certificate-key f50f00732b88fad2791feab469729819dca870da916022923a84c0d1064acba2
2019-11-09 07:55:01 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is: This is a control plan
[preflight] Running pre-flight checks
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
[WARNING FileExisting-socat]: socat not found in system path
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
[preflight] Running pre-flight checks before initializing the new control plane instance
[preflight] Pulling images required for setting up a Kubernetes cluster
[preflight] This might take a minute or two, depending on the speed of your internet connection
[preflight] You can also perform this action in beforehand using 'kubeadm config images pull'
[download-certs] Downloading the certificates in Secret "kubeadm-certs" in the "kube-system" Namespace
[certs] Using certificateDir folder "/etc/kubernetes/pki"
[certs] Generating "etcd/server" certificate and key
[certs] etcd/server serving cert is signed for DNS names [localhost.localdomain localhost] and IPs [<IP_ADDRESS> <IP_ADDRESS> ::1]
[certs] Generating "apiserver-etcd-client" certificate and key
[certs] Generating "etcd/peer" certificate and key
[certs] etcd/peer serving cert is signed for DNS names [localhost.localdomain localhost] and IPs [<IP_ADDRESS> <IP_ADDRESS> ::1]
[certs] Generating "etcd/healthcheck-client" certificate and key
[certs] Generating "apiserver" certificate and key
[certs] apiserver serving cert is signed for DNS names [localhost.localdomain kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local apiserver.cluster.local apiserver.cluster.local] and IPs [<IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS>]
[certs] Generating "apiserver-kubelet-client" certificate and key
[certs] Generating "front-proxy-client" certificate and key
[certs] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[certs] Using the existing "sa" key
[kubeconfig] Generating kubeconfig files
[kubeconfig] Using kubeconfig folder "/etc/kubernetes"
[kubeconfig] Writing "admin.conf" kubeconfig file
[kubeconfig] Writing "controller-manager.conf" kubeconfig file
[kubeconfig] Writing "scheduler.conf" kubeconfig file
[control-plane] Using manifest folder "/etc/kubernetes/manifests"
[control-plane] Creating static Pod manifest for "kube-apiserver"
[control-plane] Creating static Pod manifest for "kube-controller-manager"
[control-plane] Creating static Pod manifest for "kube-scheduler"
[check-etcd] Checking that the etcd cluster is healthy
[kubelet-start] Downloading configuration for the kubelet from the "kubelet-config-1.16" ConfigMap in the kube-system namespace
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Activating the kubelet service
[kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap...
[etcd] Announced new etcd member joining to the existing etcd cluster
[etcd] Creating static Pod manifest for "etcd"
[etcd] Waiting for the new etcd member to join the cluster. This can take up to 40s
[kubelet-check] Initial timeout of 40s passed.
error execution phase control-plane-join/etcd: error creating local etcd static pod manifest file: timeout waiting for etcd cluster to be available
To see the stack trace of this error execute with --v=5 or higher
2019-11-09 07:55:01 [EROR] [github.com/fanux/sealos/install/utils.go:114] [<IP_ADDRESS>]Error exec command failed: Process exited with status 1
2019-11-09 07:55:01 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : sed "s/<IP_ADDRESS>/<IP_ADDRESS>/g" -i /etc/hosts
2019-11-09 07:55:02 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:55:02 [DEBG] [github.com/fanux/sealos/install/print.go:20] ==>SendPackage==>KubeadmConfigInstall==>InstallMaster0==>JoinMasters
2019-11-09 07:55:02 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : echo <IP_ADDRESS> apiserver.cluster.local >> /etc/hosts
2019-11-09 07:55:02 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : echo <IP_ADDRESS> apiserver.cluster.local >> /etc/hosts
2019-11-09 07:55:02 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:55:02 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : kubeadm join <IP_ADDRESS>:6443 --token g8fcb0.j48c4th98rc07eba --discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7 --master <IP_ADDRESS>:6443 --master <IP_ADDRESS>:6443
2019-11-09 07:55:02 [DEBG] [github.com/fanux/sealos/install/utils.go:111] [<IP_ADDRESS>]command result is:
2019-11-09 07:55:02 [INFO] [github.com/fanux/sealos/install/utils.go:98] [<IP_ADDRESS>]exec cmd is : kubeadm join <IP_ADDRESS>:6443 --token g8fcb0.j48c4th98rc07eba --discovery-token-ca-cert-hash sha256:3e3c0924ec6139a2171833d11cbd1653d2f85c62acf7aabd2006dcc28d698cb7 --master <IP_ADDRESS>:6443 --master <IP_ADDRESS>:6443
`

https://github.com/fanux/sealos/issues/127   看下是否是这个原因

https://github.com/fanux/sealos/issues/134#issuecomment-547217842   这里有排查思路


handle dates && test

Previously a date object was falling into the isPlainObject branch - and returning {} (as seen in the new test added).  By adding this additional src instanceof Date check - we're able to short-circuit and keep date objects in-tact

Nice spotting this! I believe this issue would also propagate to other built-in, object-like data types but I could be mistaken. I should investigate further if I have the time. Thanks for submitting this PR.


Should the Miltary/MissionReport_201505190930 service be deleted?

Based on the fact that the service name has a time stamp appended and the service is in a stopped state, I believe that the publisher attempted to delete/overwrite the service "MissionReport", but the deletion process did not successfully complete.

Eric,
I was trying to overwrite the service, because it was not working. The first error stated this feature service was not editable.
Regards,
Phil
Phil Suarez | Solutions
Esri | Defense & Intelligence
8615 Westwood Center Dr. | Vienna, VA. 22180 | USA
T<PHONE_NUMBER>tel:909-793-2853 x2829 | M<PHONE_NUMBER>tel:571-328-6802
psuarez<EMAIL_ADDRESS>| www.esri.comhttp://www.esri.com/
From: Eric Linz<EMAIL_ADDRESS>Sent: Tuesday, May 19, 2015 2:34 PM
To: Esri/ops-server-config
Subject: [ops-server-config] Should the Miltary/MissionReport_201505190930 service be deleted? (#772)
Based on the fact that the service name has a time stamp appended and the service is in a stopped state, I believe that the publisher attempted to delete/overwrite the service "MissionReport", but the deletion process did not successfully complete.
—
Reply to this email directly or view it on GitHubhttps://github.com/Esri/ops-server-config/issues/772.

@phil7277 @jrweakland Closing issue as this service no longer exists.


Update README.md

but maybe here is random enough.. ->
join.slack.com/t/popcorntimesh/shared_invite/zt-1ylpm9cvm-8zNbQkHrDJTydG_WWDnfRA
Join if you want and sorry about the random PR.


tests: update Paddle API calls to match paddle commit b76594a (#14)

update Paddle API calls to match paddle commit b76594a

format code

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@ziyanwangin pls sign the cla


Fix: Load gnav search files only if it is authored

Removing unnecessary loading of gnav search JS and CSS files.

Resolves: MWPW-154608
Test URLs:

Before: https://main--milo--adobecom.hlx.live/drafts/blaishram/gnav-search-page?martech=off
After: https://gnav-search--milo--bandana147.hlx.live/drafts/blaishram/gnav-search-page?martech=off

Issue verfied with given branch libraries. if search is not authored in Gnav then respective 'gnav-search.js' / 'gnav-search.css' files doesn't load.
without fix : https://stage--cc--adobecom.hlx.live/products/firefly
After Fix : https://stage--cc--adobecom.hlx.live/products/firefly?milolibs=gnav-search--milo--bandana147

@bandana147 @salonijain3

Is search even still used anywhere? You might be able to remove all the search related logic.
You could also add lana logs to find out where/if search is still used

@mokimo - I had the same question in the past, but didn't get a reply. I'm assuming that this PR comes out of a need from somewhere where search is used, but it would be great to understand what that use-case is. CC: @bandana147

Yes, that is our next step. We will remove it once we confirm that it is not required anywhere else.

regression on stage


[Minor Bug in Example] Missing the last para of the text

The last part of the text from the file was missing, added it back.

Closing:
Commit 1830505 from Tilman Hausherr in branch 'pdfbox/trunk'
[ https://svn.apache.org/r1830505 ]


GitHub CI problems

Build failed on develop:
[ERROR] HttpTriplestoreConnector(akka://org-knora-webapi-e2e-v2-OntologyV2R2RSpec) -
Triplestore responded with HTTP code 500: Query evaluation error:
com.ontotext.trree.util.NotEnoughMemoryForDistinctGroupBy:
Insufficient free Heap Memory 201Mb for group by and distinct, threshold:250Mb, reached 0Mb,SPARQL query was:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX knora-base: <http://www.knora.org/ontology/knora-base#>

CONSTRUCT {
    ?class ?classPred ?classObj ;
        rdfs:subClassOf ?bnode .

    ?bnode rdf:type owl:Restriction ;
        ?cardinalityPred ?cardinalityValue .
}
FROM <http://www.ontotext.com/explicit>
WHERE {
    BIND(IRI("http://www.knora.org/ontology/0001/anything#Nothing") AS ?class)

    ?class rdf:type owl:Class .

    {
        ?class ?classPred ?classObj .
    } UNION {
        ?class rdfs:subClassOf ?bnode .
        ?bnode rdf:type owl:Restriction ;
            ?cardinalityPred ?cardinalityValue .
    }
}

The error message seems to be incorrect, because there is no GROUP BY or DISTINCT in the query.

I also get socket timeouts like this for no apparent reason:
https://github.com/dasch-swiss/knora-api/pull/1403/checks?check_run_id=342255108#step:6:2154

I also get the group by and distinct error when running the tests locally. It is always SearchRouteV2R2RSpec. Then after running it a few times it suddenly works.
I'm running with the same memory restriction for GraphDB of 5GB for the heap size.
Yes, running GraphDB with more memory will "solve" the issue of running tests. But more important, will it actually run in production as expected? In production, we will have hopefully more than 1 user at the same time doing these kinds of queries, so how much memory does Gravsearch require to work under those circumstances?
It would be great if you could investigate a bit.

I will try to make it happen locally.

More errors on GitHub CI that don't seem to have anything to do with memory:

https://github.com/dasch-swiss/knora-api/runs/352081009

how much memory does Gravsearch require to work under those circumstances?

The queries that run out of memory on GitHub CI aren't only Gravsearch queries. These errors happen will all sorts of queries, including queries to read just one resource (/v2/resources), and queries to read one resource class (/v2/ontologies/classes), as in the the first example in this issue.

Repeated socket timeouts when trying to connect to GraphDB, e.g. for this query to get default permissions:
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix knora-admin: <http://www.knora.org/ontology/knora-admin#>

SELECT ?s ?p ?o
FROM <http://www.ontotext.com/explicit>
WHERE {
    ?s rdf:type knora-admin:DefaultObjectAccessPermission .
    ?s knora-admin:forProject <http://rdfh.ch/projects/0001> .
    ?s knora-admin:forResourceClass <http://www.knora.org/ontology/0001/anything#Thing> .
    ?s knora-admin:forProperty <http://www.knora.org/ontology/0001/anything#hasGeometry> .
    ?s ?p ?o .
}

https://github.com/dasch-swiss/knora-api/runs/370753093#step:6:1948

It's almost as if GitHub CI just randomly refuses to allocate any CPU cycles to GraphDB.

Here are some test results on my 2012 iMac, running the following:

webapi / reStart in sbt (not using Docker)
GraphDB 9.0.0 with -Xmx5G, started with the bin/graphdb script (not using Docker)
Homebrew's redis-server (not using Docker)
Sipi started with docker-compose up sipi

Getting a single resource with standoff markup, using wrk, with 8 threads and 64 concurrent connections:
% wrk -t8 -c64 -d30s --timeout=15s http://<IP_ADDRESS>:3333/v2/resources/http%3A%2F%2Frdfh.ch%2F0001%2FqN1igiDRSAemBBktbRHn6g
Running 30s test @ http://<IP_ADDRESS>:3333/v2/resources/http%3A%2F%2Frdfh.ch%2F0001%2FqN1igiDRSAemBBktbRHn6g
  8 threads and 64 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   641.11ms   60.70ms 828.98ms   87.40%
    Req/Sec    15.87     11.38    60.00     60.99%
  2969 requests in 30.09s, 7.77MB read
Requests/sec:     98.66
Transfer/sec:    264.47KB

A similar test, doing a Gravsearch query:
% wrk -t8 -c64 -d30s --timeout=15s 'http://<IP_ADDRESS>:3333/v2/searchextended/PREFIX%20knora-api%3A%20%3Chttp%3A%2F%2Fapi.knora.org%2Fontology%2Fknora-api%2Fv2%23%3E%0APREFIX%20standoff%3A%20%3Chttp%3A%2F%2Fapi.knora.org%2Fontology%2Fstandoff%2Fv2%23%3E%0APREFIX%20anything%3A%20%3Chttp%3A%2F%2F<IP_ADDRESS>%3A3333%2Fontology%2F0001%2Fanything%2Fv2%23%3E%0A%0ACONSTRUCT%20%7B%0A%20%20%20%20%3Fthing%20knora-api%3AisMainResource%20true%20.%0A%20%20%20%20%3Fthing%20anything%3AhasRichtext%20%3Ftext%20.%0A%7D%20WHERE%20%7B%0A%20%20%20%20%3Fthing%20a%20anything%3AThing%20.%0A%20%20%20%20%3Fthing%20anything%3AhasRichtext%20%3Ftext%20.%0A%20%20%20%20%3Ftext%20knora-api%3AvalueAsString%20%3FtextStr%20.%0A%20%20%20%20%3Ftext%20knora-api%3AtextValueHasStandoff%20%3FstandoffTag%20.%0A%20%20%20%20%3FstandoffTag%20a%20standoff%3AStandoffItalicTag%20.%0A%20%20%20%20FILTER%20knora-api%3AmatchInStandoff(%3FtextStr%2C%20%3FstandoffTag%2C%20%22interesting%20text%22)%0A%7D'
Running 30s test @ http://<IP_ADDRESS>:3333/v2/searchextended/PREFIX%20knora-api%3A%20%3Chttp%3A%2F%2Fapi.knora.org%2Fontology%2Fknora-api%2Fv2%23%3E%0APREFIX%20standoff%3A%20%3Chttp%3A%2F%2Fapi.knora.org%2Fontology%2Fstandoff%2Fv2%23%3E%0APREFIX%20anything%3A%20%3Chttp%3A%2F%2F<IP_ADDRESS>%3A3333%2Fontology%2F0001%2Fanything%2Fv2%23%3E%0A%0ACONSTRUCT%20%7B%0A%20%20%20%20%3Fthing%20knora-api%3AisMainResource%20true%20.%0A%20%20%20%20%3Fthing%20anything%3AhasRichtext%20%3Ftext%20.%0A%7D%20WHERE%20%7B%0A%20%20%20%20%3Fthing%20a%20anything%3AThing%20.%0A%20%20%20%20%3Fthing%20anything%3AhasRichtext%20%3Ftext%20.%0A%20%20%20%20%3Ftext%20knora-api%3AvalueAsString%20%3FtextStr%20.%0A%20%20%20%20%3Ftext%20knora-api%3AtextValueHasStandoff%20%3FstandoffTag%20.%0A%20%20%20%20%3FstandoffTag%20a%20standoff%3AStandoffItalicTag%20.%0A%20%20%20%20FILTER%20knora-api%3AmatchInStandoff(%3FtextStr%2C%20%3FstandoffTag%2C%20%22interesting%20text%22)%0A%7D
  8 threads and 64 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   865.06ms  809.03ms   3.10s    83.76%
    Req/Sec    20.43     12.00    60.00     79.45%
  2605 requests in 30.10s, 6.70MB read
Requests/sec:     86.56
Transfer/sec:    227.98KB

If I don't get any errors with 64 concurrent requests, why does GitHub CI get errors with one concurrent request?

@subotic What do you think might explain this error on GitHub CI?

https://github.com/dasch-swiss/knora-api/pull/1602/checks?check_run_id=467290209
I don't think it could be GraphDB's fault. How could GraphDB prevent Knora from binding to port 3333?

And again:

https://github.com/dasch-swiss/knora-api/pull/1602/checks?check_run_id=470308761

I think that Akka is not shutting down fast enough in moments of scarce resources and that the next test already tries to start the server again.

For some time now, I have the following design for running tests in my mind, namely to run the "E2E" and "Integration" tests against an already running knora-stack. This means before these tests are run, the knora-stack is started with something like make stack-up-ci (or alternatively each part of the stack by hand).
This would allow using these tests as we use them now, but also to point them to any kind of knora-stack installation, and have it thoroughly checked (which we need but are currently missing), solve the BindException problem, and make the tests run a bit faster.
What do you think?

Yes, I think that's a good idea. We would just have to make sure to empty the triplestore and reload the test data before each test.

also to point them to any kind of knora-stack installation, and have it thoroughly checked (which we need but are currently missing)

OK but keep in mind that many tests change the contents of the repository.

But it wouldn't solve the BindException problem in the unit tests. Here I got it in JsonLDUtilSpec.

Why not run the unit tests the same way?

Or would it be possible to run the unit tests the same way?

I guess, then they are not unit tests ;-)
Let's rephrase it then. Any tests that currently start knora-api should afterward run against an externally started knora-stack.

I've added #1611

I guess, then they are not unit tests ;-)

We have a lot of tests that test responders, and these need a triplestore, but they're not E2E tests. I think all these tests extend CoreSpec, which starts the actor system, the responder manager, etc.
I've just noticed that I can change JsonLDUtilSpec so it doesn't extend CoreSpec. Maybe there are some other unit tests that can be changed that way, too.