Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

feat(CLOUDDEV-420): added disable_port_security option to instance re… #38

Merged
merged 1 commit into from
Jan 18, 2024

Conversation

DamirZinatullin
Copy link
Collaborator

…source

@DamirZinatullin DamirZinatullin force-pushed the feat/CLOUDDEV-420-port-security branch 4 times, most recently from 49ede8d to 73e8b5d Compare December 26, 2023 11:18
@@ -48,5 +48,3 @@ resource "edgecenter_cdn_sslcert" "cdnopt_cert" {
- `automated` (Boolean) The way SSL certificate was issued.
- `has_related_resources` (Boolean) It shows if the SSL certificate is used by a CDN resource.
- `id` (String) The ID of this resource.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Старайся делать изменения в форматировании отдельно от бизнес-логики, потому что иначе не удобно смотреть MR: много лишних файлов в списке изменений и приходится фильтровать нужные

Если все-таки необходимо сделать в одном PRе, выноси форматирование в отдельный коммит, когда это возможно

@@ -382,6 +417,43 @@ func attachInterfaceToInstance(instanceClient *edgecloud.ServiceClient, instance
return err
}

interfacesListAPI, err := instances.ListInterfacesAll(instanceClient, instanceID)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Когда функция большая и состоит из нескольких этапов, можно выделить явные шаги. Например, выше у тебя происходил attach интерфейса, а ниже приведение поля disable_port_security в соответствии с его значением в opts.

Я обычно подписываю такие шаги, чтобы легче было читать код.

Предлагаю тебе еще раз взглянуть на твой код и посмотреть, будет ли здесь актуально тоже подписать, что это за большой шаг внутри функции

Copy link
Collaborator

Choose a reason for hiding this comment

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

Долго читал функцию, особенно меня смутило, почему у тебя в цикле проверяется opts, если opts -- это объект, сформированный только для запроса выше в функции.

Это наглядный пример, почему стоит когда это возможно следить за тем, чтобы функция выполняла ровно одну задачу. Иначе нужно внимательно следить, чтобы переменные, предназначеные для чего-то одного, не использовались там, где они не предназначена.

ipAddress := assignment.IPAddress.String()

var portSecurityDisabled bool
for _, interfaceExtracted := range portSecurityOptsListExtracted {
Copy link
Collaborator

Choose a reason for hiding this comment

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

Здесь явно путаница в типах, отмечу те проблемы, которые заметил:

  1. Из того, что я заметил, всё что opts обозначает параметры для запросов к Cloud API. У тебя InstancePortSecurityOpts кажется не используется в таком ключе, обозначает что-то другое.
  2. В этой функции непонятно чем отличается portSecurityOptsList от portSecurityOptsListExtracted: они имеют одинаковый тип, и первый собирается из второго. Это мешает разобраться, что делает код.
  3. И третье - в строке for _, interfaceExtracted := range portSecurityOptsListExtracted { у тебя то, что было opts, превращается в interface, что окончательно вносит путаницу

Проверь, пожалуйста, и поправь, если действительно есть проблема здесь

@DamirZinatullin DamirZinatullin force-pushed the feat/CLOUDDEV-420-port-security branch from 3668fda to 4c08398 Compare January 11, 2024 09:07
@alex2304
Copy link
Collaborator

Стало проще и легче читать, аппрувнул

@alex2304 alex2304 self-requested a review January 18, 2024 07:46
@DamirZinatullin DamirZinatullin force-pushed the feat/CLOUDDEV-420-port-security branch from 158885f to cee1e84 Compare January 18, 2024 12:09
@DamirZinatullin DamirZinatullin force-pushed the feat/CLOUDDEV-420-port-security branch from cee1e84 to 048524f Compare January 18, 2024 12:21
@DamirZinatullin DamirZinatullin merged commit 048524f into master Jan 18, 2024
1 check passed
@DamirZinatullin DamirZinatullin deleted the feat/CLOUDDEV-420-port-security branch January 18, 2024 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants