Terraform-provider-nexus: рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛/рдирд┐рдХрд╛рд▓рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 3 рдЬреВрди 2020  ┬╖  16рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: datadrivers/terraform-provider-nexus

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ,

рдпрд╣ рдПрдХ рд╡реГрджреНрдзрд┐ рдЕрдиреБрд░реЛрдз рд╣реИред

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рдж, рдиреЗрдХреНрд╕рд╕ рдЗрд╕ рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдирд╛рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд╛рдо рдореЗрдВ рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдпрд╛ рдЙрд╕ рднреВрдорд┐рдХрд╛ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдЬреЛрдбрд╝рдиреЗ/рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛред
рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЕрднреА рдЕрд╕рдВрднрд╡ рд╣реИред
рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛: рдРрд╕реА рднреВрдорд┐рдХрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХрд╛рдзрд┐рдХ рднрдВрдбрд╛рд░реЛрдВ рд╕реЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╣реЛрдВред
рдЗрд╕ рддрд░рд╣ рдХреА рд╕реБрд╡рд┐рдзрд╛ рд╣реЛрдирд╛ рд╢рд╛рдирджрд╛рд░ рд╣реЛрдЧрд╛ред ;)

рд╕рд╛рджрд░,
рддрд╛рд░рд╛рд╕

рд╕рднреА 16 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдп @ рдХреЛрд╣рд░рд╛ 1985 ,

рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛? рдпрд╣ domain , repository рдпрд╛ name рдЬреИрд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд╛рдкрд╕ рдЖ рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЕрдиреНрдп рд╕рд╛рдорд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реМрдЯрд╛рдИ рдЧрдИ рд╕реВрдЪреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

resource "nexus_repository" "demo" {
  type   = "hosted"
  format = "maven2"
  name   = "demo"
  ...
}

data "nexus_privileges" "demo" {
  repository = nexus_repository.demo.name
}

рд╣рд╛рдп @Nosmoht ,
рд╣рд╛рдБред рдпрд╣ рдПрдХ рдЖрдХрд░реНрд╖рдг рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

@ рдиреЛрд╕реНрдореЛрд╣рдЯ ,
рдПрдХрд╛рдзрд┐рдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдпрд╛ рдиреЗрд╕реНрдЯреЗрдб рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред Cuz рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП repository-view рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЬреЛ this рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

рд╣рд╛рдп @ рдХреЛрд╣рд░рд╛ 1985 ,

рдЗрд╕реЗ v1.7.0 рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреНрд░рд▓реЗрдЦрди

рдкреНрд░рд▓реЗрдЦрди

рдардВрдбрд╛ред рдзрдиреНрдпрд╡рд╛рдж @Nosmoht

@fog1985 рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрд░реЗ @Nosmoht ,
рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдирдИ рд░рд┐рд▓реАрдЬрд╝ рдбрд╛рд▓рдиреЗ рдФрд░ рддреБрд░рдВрдд рдЙрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рдирд╣реАрдВ рд╣реИред
рдпрд╛ рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЫреЛрдбрд╝ рджреЗрдВ рдФрд░ рдореИрдВ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдкреВрд░реА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

рд╣рд╛рдп @Nosmoht ,
рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред рдФрд░ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╕рд╛рдорд╛рдиреЛрдВ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╕реЗ рдереЛрдбрд╝рд╛ рднреНрд░рдорд┐рддред
рдпрд╣рд╛рдБ рдореЗрд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ:

data "nexus_privileges" "apt-proxy-read" {
  format     = "apt"
  repository = "apt-proxy"
  type = "repository-view"
  privileges {
    actions = ["read"]
  }
}

рдЗрд╕ рдХреЛрдб рдкрд░ рдЬрд┐рдХреНрд░ рдХрд░ рд░рд╣рд╛ рдерд╛:
https://github.com/datadrivers/terraform-provider-nexus/blob/master/nexus/data_source_privileges.go

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ privileges рдЕрдиреБрднрд╛рдЧ рд╣реИред
рд▓реЗрдХрд┐рди рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ format рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд░реВрдЯ рдШреЛрд╖рдгрд╛ рдореЗрдВ рдФрд░ format рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдЕрдВрджрд░ред

рдлрд┐рд░ рднреА, рдореБрдЭреЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдорд┐рд▓рддрд╛ рд╣реИ:

Error: "privileges": this field cannot be set

  on roles.tf line 1, in data "nexus_privileges" "apt-proxy-read":
   1: data "nexus_privileges" "apt-proxy-read" {

рдЕрдЧрд░ рдореИрдВ рд░реВрдЯ рдореЗрдВ actions рдбрд╛рд▓рддрд╛ рд╣реВрдВ рддреЛ рднреА actions are not expected here рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред

рд╣рд╛рдп @ рдХреЛрд╣рд░рд╛ 1985 ,

рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рднрдВрдбрд╛рд░ format рдФрд░ type рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддреЛ рдХреГрдкрдпрд╛ рдЕрдкрдиреА рдШреЛрд╖рдгрд╛ рд╕реЗ privileges рд╣рдЯрд╛ рджреЗрдВ рдФрд░ рдЖрдкрдХреЛ рд╡рд╛рдкрд╕реА рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рднрдВрдбрд╛рд░ apt-proxy рдХреЗ рд╕рднреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓рдиреА рдЪрд╛рд╣рд┐рдПред

рд╣рд╛рдп @Nosmoht ,
рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рд╕рднреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдирд╛рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрдврд╝рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛:

data "nexus_privileges" "apt-proxy-read" {
  format     = "apt"
  repository = "apt-proxy"
  type = "repository-view"
}

output "privileges" {
    value = data.nexus_privileges.apt-proxy-read.privileges.*.name
}

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ, рдЬрд┐рд╕рдХреА рдХреНрд░рд┐рдпрд╛ READ рдпрд╛ WRITE ?
рдпрд╛ рд╕рд┐рд░реНрдл рд╕рднреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА?

рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдмреНрд▓реЙрдХ рдореЗрдВ рдЗрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ:

type = "repository-view"

рдХреНрдпрд╛ рдпрд╣ рднрдВрдбрд╛рд░ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдпрд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
рдпрджрд┐ рдпрд╣ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рд╣реИ рддреЛ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред Cuz repository-view рдореБрдЭреЗ рд╕рднреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдорд┐рд▓реА, рдЬрд┐рдирдореЗрдВ рд▓рд┐рдЦрдиреЗ/рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдЖрджрд┐ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдХреБрдЫ рд░реАрдб, рд░рд╛рдЗрдЯ, рдпрд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдлрд╝рд┐рд▓реНрдЯрд░ рдореЗрдВ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрджрд╛рд╣рд░рдг рджреЗрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рд╣рдо рдХрд░ рд╕рдХрддреЗ рдереЗ рд╡рд╣ рд╣реИ name = ".*-read" рдЬреИрд╕рд╛ рдирд╛рдо рдлрд╝рд┐рд▓реНрдЯрд░ рдЬреЛрдбрд╝рдирд╛ред рдЗрд╕рд▓рд┐рдП рд╣рдо рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдирд╛рдо рдкрд░ рдПрдХ рд░реЗрдЧреЗрдХреНрд╕рдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рд░реЗрдЧреЗрдХреНрд╕рдкреА рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдЖрдкрдХреЛ рдорджрдж рдорд┐рд▓реЗрдЧреА?

рд╣рд╛рдБ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдХрд╛рдо рдмрди рдЬрд╛рдПрдЧрд╛ред
рдореИрдВрдиреЗ рдЯреЗрд░рд╛рдлреЛрдорд░ рдХреА filter рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
https://www.terraform.io/docs/providers/oci/guides/filters.html
рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред

data "nexus_privileges" "apt-proxy-read" {
  format     = "apt"
  repository = "apt-proxy"
  type = "repository-view"

  filter {
    name = "actions"
    values = ["READ"]
  }
}

рдирддреАрдЬрд╛:

Error: Unsupported block type

  on roles.tf line 6, in data "nexus_privileges" "apt-proxy-read":
   6:   filter {

Blocks of type "filter" are not expected here.

рддреЛ name рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдЕрдВрддрд░рд┐рдо рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЕрднреА рдЗрд╕рдХреЗ рд╕рд╛рде рдЖрдпрд╛ рд╣реВрдВ:

value = [for x in data.nexus_privileges.apt-proxy-read.privileges: x.name if contains(x["actions"], "READ")]

рдЬреЛ READ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рджреЗрддрд╛ рд╣реИред :)

рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╢рд╛рдпрдж рдЗрд╕рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИрдВ:

output "privileges_apt_proxy_all_read" {
    value = [for x in data.nexus_privileges.apt-proxy-read.privileges: x.name if can(regex("ALL|READ", join("",x.actions)))]
}

output "privileges_apt_proxy_browse" {
    value = [for x in data.nexus_privileges.apt-proxy-read.privileges: x.name if can(regex("BROWSE", join("",x.actions)))]
}

output "privileges_multiple_repos_example" {
    value = concat([for x in data.nexus_privileges.apt-proxy-read.privileges: x.name if can(regex("ALL|READ", join("",x.actions)))], [for x in data.nexus_privileges.apt-proxy-read.privileges: x.name if can(regex("BROWSE", join("",x.actions)))])
}

рдЗрд╕ рддрд░рд╣, рд╣рдо actions рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде RegExp рдЖрдзрд╛рд░ рдкрд░ рдЕрдЪреНрдЫреА рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╛ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдХреЗ concat рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рд╡рд┐рднрд┐рдиреНрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдФрд░ рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рднреА рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реЗрдВред

рд╣рд╛рдп @ рдХреЛрд╣рд░рд╛ 1985 ,

рдХреНрдпрд╛ рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?

рд╣рд╛рдп @ рдХреЛрд╣рд░рд╛ 1985 ,

рдХреНрдпрд╛ рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?

рд╣рд╛рдп @Nosmoht ,
рдЬрд╝рд░реВрд░ред
рдзрдиреНрдпрд╡рд╛рджред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Skaronator picture Skaronator  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fog1985 picture fog1985  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Skaronator picture Skaronator  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

5obol picture 5obol  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fog1985 picture fog1985  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ